{"id":20832,"date":"2014-02-21T12:53:07","date_gmt":"2014-02-21T10:53:07","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=20832"},"modified":"2014-02-21T12:53:24","modified_gmt":"2014-02-21T10:53:24","slug":"git-ftp-git-powered-ftp-client-written-as-shell-script","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2014\/02\/21\/git-ftp-git-powered-ftp-client-written-as-shell-script\/","title":{"rendered":"Git-ftp &#8211; git powered FTP client written as shell script"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p><a href=\"http:\/\/git-ftp.github.io\/git-ftp\/\">Git-ftp &#8211; git powered FTP client written as shell script<\/a><\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>Git-ftp &#8211; git powered FTP client written as shell script<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"link","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_links_to":"","_links_to_target":""},"categories":[1,6,18,62,1334],"tags":[1960,2265,1588],"keyring_services":[],"class_list":["post-20832","post","type-post","status-publish","format-link","hentry","category-general","category-linux","category-programming","category-technology","category-web-work","tag-command-line","tag-git","tag-version-control","post_format-post-format-link"],"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":18111,"url":"https:\/\/mamchenkov.net\/wordpress\/2013\/04\/29\/dandelion-incremental-git-repository-deployment\/","url_meta":{"origin":20832,"position":0},"title":"dandelion &#8211; Incremental Git repository deployment","author":"Leonid Mamchenkov","date":"April 29, 2013","format":"link","excerpt":"dandelion - Incremental Git repository deployment This might be really handy for those times when you need to push from Git to FTP\/SFTP or cloud services directly.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":20510,"url":"https:\/\/mamchenkov.net\/wordpress\/2014\/02\/12\/gitsh-an-interactive-shell-for-git\/","url_meta":{"origin":20832,"position":1},"title":"gitsh &#8211; an interactive shell for git","author":"Leonid Mamchenkov","date":"February 12, 2014","format":"link","excerpt":"gitsh - an interactive shell for git","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":16691,"url":"https:\/\/mamchenkov.net\/wordpress\/2012\/09\/07\/smartgit-the-easy-to-use-githgsvn-client\/","url_meta":{"origin":20832,"position":2},"title":"SmartGit \u2014 The Easy-to-Use Git+Hg+SVN Client","author":"Leonid Mamchenkov","date":"September 7, 2012","format":"link","excerpt":"SmartGit \u2014 The Easy-to-Use Git+Hg+SVN Client Personally, I prefer command line tools that allow me the greatest flexibility and control. \u00a0However there are many people who feel more comfortable in graphical environments. \u00a0For them, SmartGit looks like a good option. SmartGit is an easy-to-use graphical user interface for Git, Mercurial\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":26154,"url":"https:\/\/mamchenkov.net\/wordpress\/2016\/06\/03\/deploying-with-git\/","url_meta":{"origin":20832,"position":3},"title":"Deploying with git","author":"Leonid Mamchenkov","date":"June 3, 2016","format":false,"excerpt":"Git is an excellent version control, but it's more than just that. \u00a0A lot of people use it to deploy their projects as well. \u00a0Most suggestions (for example, this tutorial from Digital\u00a0Ocean) around the web employ the post-commit (or other) hooks to push the code to a remote server. \u00a0While\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":28580,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/05\/14\/gitea-self-hosted-git-service\/","url_meta":{"origin":20832,"position":4},"title":"Gitea &#8211; self-hosted Git service","author":"Leonid Mamchenkov","date":"May 14, 2018","format":false,"excerpt":"Gitea is yet another alternative to BitBucket, GitHub, and GitLab Cloud.\u00a0 It's an open source solution for self-hosting Git repositories.\u00a0 It's a fork of Gogs, written in Go, and is available under the MIT license.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/05\/gitea.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":26280,"url":"https:\/\/mamchenkov.net\/wordpress\/2016\/07\/24\/git-from-the-inside-out\/","url_meta":{"origin":20832,"position":5},"title":"Git from the inside out","author":"Leonid Mamchenkov","date":"July 24, 2016","format":false,"excerpt":"Git from the inside out - must be the best thing I've ever seen on how git works. \u00a0Everybody knows that git is awesome. \u00a0Most know that git is implemented with graphs. \u00a0But not many know how exactly git stores the project history and how it is affected by different\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"git","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/07\/git-500x149.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/20832","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/comments?post=20832"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/20832\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=20832"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=20832"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=20832"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=20832"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}