{"id":16609,"date":"2012-08-07T09:43:32","date_gmt":"2012-08-07T07:43:32","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=16609"},"modified":"2012-08-07T09:43:32","modified_gmt":"2012-08-07T07:43:32","slug":"git-subtree","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2012\/08\/07\/git-subtree\/","title":{"rendered":"git subtree"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p><a href=\"https:\/\/github.com\/apenwarr\/git-subtree\/\">git subtree<\/a><\/p>\n<p>For those times when <em>git submodule<\/em> is just not good enough, they say.<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>git subtree For those times when git submodule is just not good enough, they say.<\/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":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_links_to":"","_links_to_target":""},"categories":[1,18,62],"tags":[2265,1588],"keyring_services":[],"class_list":["post-16609","post","type-post","status-publish","format-link","hentry","category-general","category-programming","category-technology","tag-git","tag-version-control","post_format-post-format-link"],"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":17655,"url":"https:\/\/mamchenkov.net\/wordpress\/2013\/01\/09\/git-separating-folder-into-different-repository-with-history\/","url_meta":{"origin":16609,"position":0},"title":"Git : separating folder into different repository, with history","author":"Leonid Mamchenkov","date":"January 9, 2013","format":false,"excerpt":"First things first. \u00a0If you don't use git for version control yet, stop right now and go plan your migration. \u00a0You'll thank me later. \u00a0Now. \u00a0A few days ago I had a tricky problem. \u00a0A chunk of code that was initially all over the project has been refactored into a\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":16609,"position":1},"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":16691,"url":"https:\/\/mamchenkov.net\/wordpress\/2012\/09\/07\/smartgit-the-easy-to-use-githgsvn-client\/","url_meta":{"origin":16609,"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":18111,"url":"https:\/\/mamchenkov.net\/wordpress\/2013\/04\/29\/dandelion-incremental-git-repository-deployment\/","url_meta":{"origin":16609,"position":3},"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":16448,"url":"https:\/\/mamchenkov.net\/wordpress\/2012\/07\/11\/huge-huge-thanks-to-git-bisect-i-just-sorted-out\/","url_meta":{"origin":16609,"position":4},"title":"Huge, huge thanks to git bisect! With its help, I &#8230;","author":"Leonid Mamchenkov","date":"July 11, 2012","format":"status","excerpt":"Huge, huge thanks to git bisect! With its help, I just sorted out a huge argument about who removed a piece of code and when. \u00a0With an actively developed project among few developers and branches, it's not trivial to say when the change was introduced. \u00a0Unless, of course, you are\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":29058,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/12\/10\/git-merge-vs-git-rebase\/","url_meta":{"origin":16609,"position":5},"title":"git merge vs. git rebase","author":"Leonid Mamchenkov","date":"December 10, 2018","format":false,"excerpt":"There's a lot of confusion between git merge and git rebase even among seasoned users of git.\u00a0 \"An Introduction to Git Merge and Git Rebase: What They Do and When to Use Them\" is a great article explaining the pros and cons of each, and when and why using each\u2026","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\/12\/git-merge-rebase.jpeg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/git-merge-rebase.jpeg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/git-merge-rebase.jpeg?resize=525%2C300&ssl=1 1.5x"},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/16609","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=16609"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/16609\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=16609"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=16609"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=16609"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=16609"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}