{"id":27732,"date":"2017-06-27T23:35:56","date_gmt":"2017-06-27T21:35:56","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=27732"},"modified":"2017-06-27T23:35:56","modified_gmt":"2017-06-27T21:35:56","slug":"git-add-patch-and-interactive","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/","title":{"rendered":"git add &#8211;patch and &#8211;interactive"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p>I knew about <a href=\"https:\/\/git-scm.com\/book\/en\/v2\/Git-Tools-Interactive-Staging\">git interactive staging<\/a> for a while now, but I&#8217;ve never really used it. \u00a0Most days I work on a single feature or bug fix at a time and can commit sequentially, one change after another. \u00a0For an occasional mess, I found git interactive staging user interface too be too cumbersome.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/06\/git-interactive-staging.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"27733\" data-permalink=\"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/git-interactive-staging\/\" data-orig-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/06\/git-interactive-staging.png?fit=665%2C201&amp;ssl=1\" data-orig-size=\"665,201\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"git interactive staging\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/06\/git-interactive-staging.png?fit=660%2C199&amp;ssl=1\" class=\"aligncenter size-medium wp-image-27733\" src=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/06\/git-interactive-staging-500x151.png?resize=500%2C151&#038;ssl=1\" alt=\"\" width=\"500\" height=\"151\" srcset=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/06\/git-interactive-staging.png?resize=500%2C151&amp;ssl=1 500w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/06\/git-interactive-staging.png?w=665&amp;ssl=1 665w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><\/p>\n<p>The last couple of days at work were quite chaotic, with me jumping from one thing to another, and I decided to master that feature once and for all. \u00a0Looking for a better tutorial, I came across <a href=\"http:\/\/nuclearsquid.com\/writings\/git-add\/\">this blog post<\/a>, which covers the interactive staging, but also provides a much simpler approach &#8211; &#8220;<em>git add &#8211;patch<\/em>&#8220;.<\/p>\n<p>It&#8217;ll take some practice to get it into my finger memory, but I think I&#8217;m settled now.<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>I knew about git interactive staging for a while now, but I&#8217;ve never really used it. \u00a0Most days I work on a single feature or bug fix at a time and can commit sequentially, one change after another. \u00a0For an occasional mess, I found git interactive staging user interface too be too cumbersome. The last &hellip; <a href=\"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">git add &#8211;patch and &#8211;interactive<\/span><\/a><\/p>\n<!-- google_ad_section_end -->\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"git add --patch and --interactive #git #WebDev #programming #VersionControl #productivity","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},"jetpack_post_was_ever_published":false,"_links_to":"","_links_to_target":""},"categories":[1,18,133,62,1334],"tags":[2265,1079,1588,1330],"keyring_services":[],"class_list":["post-27732","post","type-post","status-publish","format-standard","hentry","category-general","category-programming","category-sysadmin","category-technology","category-web-work","tag-git","tag-productivity","tag-version-control","tag-web-development"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.8 - aioseo.com -->\n\t<meta name=\"description\" content=\"I knew about git interactive staging for a while now, but I&#039;ve never really used it. Most days I work on a single feature or bug fix at a time and can commit sequentially, one change after another. For an occasional mess, I found git interactive staging user interface too be too cumbersome. The last\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Leonid Mamchenkov\"\/>\n\t<meta name=\"google-site-verification\" content=\"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.8\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Leonid Mamchenkov - Life, universe, and everything else\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"git add \u2013patch and \u2013interactive - Leonid Mamchenkov\" \/>\n\t\t<meta property=\"og:description\" content=\"I knew about git interactive staging for a while now, but I&#039;ve never really used it. Most days I work on a single feature or bug fix at a time and can commit sequentially, one change after another. For an occasional mess, I found git interactive staging user interface too be too cumbersome. The last\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2017-06-27T21:35:56+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2017-06-27T21:35:56+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/MamchenkovBlog\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:title\" content=\"git add \u2013patch and \u2013interactive - Leonid Mamchenkov\" \/>\n\t\t<meta name=\"twitter:description\" content=\"I knew about git interactive staging for a while now, but I&#039;ve never really used it. Most days I work on a single feature or bug fix at a time and can commit sequentially, one change after another. For an occasional mess, I found git interactive staging user interface too be too cumbersome. The last\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/06\\\/27\\\/git-add-patch-and-interactive\\\/#blogposting\",\"name\":\"git add \\u2013patch and \\u2013interactive - Leonid Mamchenkov\",\"headline\":\"git add &#8211;patch and &#8211;interactive\",\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/wp-content\\\/uploads\\\/2017\\\/06\\\/git-interactive-staging-500x151.png\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/06\\\/27\\\/git-add-patch-and-interactive\\\/#articleImage\"},\"datePublished\":\"2017-06-27T23:35:56+02:00\",\"dateModified\":\"2017-06-27T23:35:56+02:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/06\\\/27\\\/git-add-patch-and-interactive\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/06\\\/27\\\/git-add-patch-and-interactive\\\/#webpage\"},\"articleSection\":\"All, Programming, Sysadmin, Technology, Web work, git, productivity, version control, web development\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/06\\\/27\\\/git-add-patch-and-interactive\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"position\":2,\"name\":\"Technology\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"name\":\"Programming\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"position\":3,\"name\":\"Programming\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/06\\\/27\\\/git-add-patch-and-interactive\\\/#listItem\",\"name\":\"git add &#8211;patch and &#8211;interactive\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/06\\\/27\\\/git-add-patch-and-interactive\\\/#listItem\",\"position\":4,\"name\":\"git add &#8211;patch and &#8211;interactive\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"name\":\"Programming\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/06\\\/27\\\/git-add-patch-and-interactive\\\/#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/06\\\/27\\\/git-add-patch-and-interactive\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/06\\\/27\\\/git-add-patch-and-interactive\\\/#webpage\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/06\\\/27\\\/git-add-patch-and-interactive\\\/\",\"name\":\"git add \\u2013patch and \\u2013interactive - Leonid Mamchenkov\",\"description\":\"I knew about git interactive staging for a while now, but I've never really used it. Most days I work on a single feature or bug fix at a time and can commit sequentially, one change after another. For an occasional mess, I found git interactive staging user interface too be too cumbersome. The last\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/06\\\/27\\\/git-add-patch-and-interactive\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"datePublished\":\"2017-06-27T23:35:56+02:00\",\"dateModified\":\"2017-06-27T23:35:56+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/\",\"name\":\"Blog of Leonid Mamchenkov\",\"description\":\"Life, universe, and everything else\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"git add \u2013patch and \u2013interactive - Leonid Mamchenkov","description":"I knew about git interactive staging for a while now, but I've never really used it. Most days I work on a single feature or bug fix at a time and can commit sequentially, one change after another. For an occasional mess, I found git interactive staging user interface too be too cumbersome. The last","canonical_url":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/#blogposting","name":"git add \u2013patch and \u2013interactive - Leonid Mamchenkov","headline":"git add &#8211;patch and &#8211;interactive","author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"},"image":{"@type":"ImageObject","url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/06\/git-interactive-staging-500x151.png","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/#articleImage"},"datePublished":"2017-06-27T23:35:56+02:00","dateModified":"2017-06-27T23:35:56+02:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/#webpage"},"isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/#webpage"},"articleSection":"All, Programming, Sysadmin, Technology, Web work, git, productivity, version control, web development"},{"@type":"BreadcrumbList","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","position":1,"name":"Home","item":"https:\/\/mamchenkov.net\/wordpress","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","position":2,"name":"Technology","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","name":"Programming"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","position":3,"name":"Programming","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/#listItem","name":"git add &#8211;patch and &#8211;interactive"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/#listItem","position":4,"name":"git add &#8211;patch and &#8211;interactive","previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","name":"Programming"}}]},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/#person","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author","url":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"WebPage","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/#webpage","url":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/","name":"git add \u2013patch and \u2013interactive - Leonid Mamchenkov","description":"I knew about git interactive staging for a while now, but I've never really used it. Most days I work on a single feature or bug fix at a time and can commit sequentially, one change after another. For an occasional mess, I found git interactive staging user interface too be too cumbersome. The last","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#website"},"breadcrumb":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/#breadcrumblist"},"author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"creator":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"datePublished":"2017-06-27T23:35:56+02:00","dateModified":"2017-06-27T23:35:56+02:00"},{"@type":"WebSite","@id":"https:\/\/mamchenkov.net\/wordpress\/#website","url":"https:\/\/mamchenkov.net\/wordpress\/","name":"Blog of Leonid Mamchenkov","description":"Life, universe, and everything else","inLanguage":"en-US","publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"}}]},"og:locale":"en_US","og:site_name":"Leonid Mamchenkov - Life, universe, and everything else","og:type":"article","og:title":"git add \u2013patch and \u2013interactive - Leonid Mamchenkov","og:description":"I knew about git interactive staging for a while now, but I've never really used it. Most days I work on a single feature or bug fix at a time and can commit sequentially, one change after another. For an occasional mess, I found git interactive staging user interface too be too cumbersome. The last","og:url":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/","og:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:secure_url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:width":1024,"og:image:height":1024,"article:published_time":"2017-06-27T21:35:56+00:00","article:modified_time":"2017-06-27T21:35:56+00:00","article:publisher":"https:\/\/www.facebook.com\/MamchenkovBlog","twitter:card":"summary_large_image","twitter:site":"@mamchenkov","twitter:title":"git add \u2013patch and \u2013interactive - Leonid Mamchenkov","twitter:description":"I knew about git interactive staging for a while now, but I've never really used it. Most days I work on a single feature or bug fix at a time and can commit sequentially, one change after another. For an occasional mess, I found git interactive staging user interface too be too cumbersome. The last","twitter:creator":"@mamchenkov","twitter:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg"},"aioseo_meta_data":{"post_id":"27732","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"BlogPosting","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2023-07-19 14:26:16","updated":"2026-01-15 13:03:34","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/\" title=\"Technology\">Technology<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/\" title=\"Programming\">Programming<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tgit add \u2013patch and \u2013interactive\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/mamchenkov.net\/wordpress"},{"label":"Technology","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/"},{"label":"Programming","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/"},{"label":"git add &#8211;patch and &#8211;interactive","link":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/27\/git-add-patch-and-interactive\/"}],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":20510,"url":"https:\/\/mamchenkov.net\/wordpress\/2014\/02\/12\/gitsh-an-interactive-shell-for-git\/","url_meta":{"origin":27732,"position":0},"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":29014,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/24\/learn-git-branching\/","url_meta":{"origin":27732,"position":1},"title":"Learn Git Branching","author":"Leonid Mamchenkov","date":"November 24, 2018","format":false,"excerpt":"\"Learn Git Branching\" is a very cool, interactive tutorial for branching in git version control.\u00a0 It starts off with the very basic concepts, even covering simple commits, and continues step-by-step all the way to merging, cherry-picking, rebasing, and working with remotes. Super cool!","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\/11\/git-branch-500x246.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":27671,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/08\/git-commit-good-practice\/","url_meta":{"origin":27732,"position":2},"title":"Git Commit Good Practice","author":"Leonid Mamchenkov","date":"June 8, 2017","format":false,"excerpt":"Open Stack wiki has an excellent guide on how to create good commits. \u00a0In a few places it is too specific to Open Stack development practices, but overall it's one of the best guides I've seen for any project using git. It is basically split into two sections. \u00a0One on\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\/2017\/06\/git_commit.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":28607,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/06\/06\/git-worktree-a-better-way-for-git-stash-abusers\/","url_meta":{"origin":27732,"position":3},"title":"git worktree &#8211; a better way for git stash abusers","author":"Leonid Mamchenkov","date":"June 6, 2018","format":false,"excerpt":"If you constantly find yourself using \"git stash\" while working on a project, or, even worse - have multiple copies of the same project cloned on the same machine, \"git worktree\" might be a much better alternative for you. Manage multiple working trees attached to the same repository. A git\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\/06\/git-500x238.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":22166,"url":"https:\/\/mamchenkov.net\/wordpress\/2014\/07\/10\/git-branch-names-support-forward-slashes\/","url_meta":{"origin":27732,"position":4},"title":"Git branch names support forward slashes","author":"Leonid Mamchenkov","date":"July 10, 2014","format":false,"excerpt":"Oh. My. God! \u00a0I've been using git for years now and I only learned this today - git branch names support forward slashes! How awesome is that?! \u00a0You can do things like this: Grouping branches like this is much easier indeed! I came across this while reading CakeDC's CakePHP Plugin\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":27280,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/01\/31\/composer-patches-simple-patches-plugin-for-composer\/","url_meta":{"origin":27732,"position":5},"title":"composer-patches &#8211; Simple patches plugin for Composer","author":"Leonid Mamchenkov","date":"January 31, 2017","format":false,"excerpt":"composer-patches is a plugin for Composer which helps with applying patches to the installed dependencies. \u00a0It supports patches from URLs, local files, and from other dependencies. I think this is absolutely brilliant! It's quite often that one finds bugs and issues in external dependencies. \u00a0Once the bug (or even the\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\/2017\/01\/commit-500x263.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\/27732","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=27732"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/27732\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=27732"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=27732"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=27732"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=27732"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}