[{"data":1,"prerenderedAt":-1},["Reactive",2],{"content-/ko/articles/general/git-cherrypick":3},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"_empty":6,"title":8,"description":9,"excerpt":10,"topic":21,"authors":22,"tags":26,"updatedAt":30,"createdAt":30,"body":31,"_type":764,"_id":765,"_source":766,"_file":767,"_extension":768},"/ko/articles/general/git-cherrypick","general",false,"","Git 체리픽","브랜치 간 커밋을 수동 복사 없이 특정 커밋만 복사하는 방법",{"type":11,"children":12},"root",[13],{"type":14,"tag":15,"props":16,"children":17},"element","p",{},[18],{"type":19,"value":20},"text","Git 체리픽(cherry-pick)은 두 브랜치를 병합하지 않고도 특정 커밋을 다른 브랜치로 복사할 수 있게 해주는 기능입니다.","일반",[23],{"name":24,"avatar":25},"Shaun Chong","levi.png",[27,28,29],"git","workflow","commit","2026-05-17T12:24:00.000Z",{"type":11,"children":32,"toc":758},[33,37,48,57,91,98,116,127,175,200,295,313,397,403,422,519,525,530,733,738,746,753],{"type":14,"tag":15,"props":34,"children":35},{},[36],{"type":19,"value":20},{"type":14,"tag":38,"props":39,"children":42},"callout",{"title":40,"type":41},"부인 성명","warning",[43],{"type":14,"tag":15,"props":44,"children":45},{},[46],{"type":19,"value":47},"한국어 실력이 부적하여 이 글이 구글 번역기를 주로 활용했기 때문에 부정확한 문법과 어휘가 있을수 있습니다. 이 점 양해 부탁드리며, 추후에 다시 검토하여 수정하도록 하겠습니다.",{"type":14,"tag":15,"props":49,"children":50},{},[51],{"type":14,"tag":52,"props":53,"children":56},"img",{"alt":54,"src":55},"Git 체리픽 개요","/images/git-cherrypick/git_cherrypick_overview.svg",[],{"type":14,"tag":15,"props":58,"children":59},{},[60,62,68,70,75,77,82,84,89],{"type":19,"value":61},"위 그림은 ",{"type":14,"tag":63,"props":64,"children":65},"code-inline",{},[66],{"type":19,"value":67},"feature",{"type":19,"value":69}," 브랜치에서 ",{"type":14,"tag":63,"props":71,"children":72},{},[73],{"type":19,"value":74},"main",{"type":19,"value":76}," 브랜치의 ",{"type":14,"tag":63,"props":78,"children":79},{},[80],{"type":19,"value":81},"C'",{"type":19,"value":83},"로 ",{"type":14,"tag":63,"props":85,"children":86},{},[87],{"type":19,"value":88},"C",{"type":19,"value":90}," 커밋을 이동하려는 의도를 보여줍니다. 체리픽은 커밋 메타데이터를 일대일로 이동시키는 대신 새로운 커밋 해시를 생성합니다.",{"type":14,"tag":92,"props":93,"children":95},"h2",{"id":94},"기본-사용법",[96],{"type":19,"value":97},"기본 사용법",{"type":14,"tag":15,"props":99,"children":100},{},[101,103,107,109,114],{"type":19,"value":102},"이 기능은 ",{"type":14,"tag":63,"props":104,"children":105},{},[106],{"type":19,"value":74},{"type":19,"value":108}," 브랜치에 잘못 커밋했을 때, 대신 ",{"type":14,"tag":63,"props":110,"children":111},{},[112],{"type":19,"value":113},"feat/awesome-feature",{"type":19,"value":115}," 기능 브랜치에 커밋해야 할 경우에 유용합니다.",{"type":14,"tag":15,"props":117,"children":118},{},[119,121,125],{"type":19,"value":120},"이 경우 먼저 ",{"type":14,"tag":63,"props":122,"children":123},{},[124],{"type":19,"value":74},{"type":19,"value":126}," 브랜치에서 커밋 해시를 가져옵니다.",{"type":14,"tag":128,"props":129,"children":134},"code",{"className":130,"code":132,"language":133,"meta":7},[131],"language-sh","git log --oneline\n","sh",[135],{"type":14,"tag":136,"props":137,"children":138},"pre",{},[139],{"type":14,"tag":128,"props":140,"children":141},{"__ignoreMap":7},[142],{"type":14,"tag":143,"props":144,"children":147},"span",{"class":145,"line":146},"line",1,[148,153,159,165,169],{"type":14,"tag":143,"props":149,"children":151},{"class":150},"ct-255010",[152],{"type":19,"value":27},{"type":14,"tag":143,"props":154,"children":156},{"class":155},"ct-947867",[157],{"type":19,"value":158}," ",{"type":14,"tag":143,"props":160,"children":162},{"class":161},"ct-094461",[163],{"type":19,"value":164},"log",{"type":14,"tag":143,"props":166,"children":167},{"class":155},[168],{"type":19,"value":158},{"type":14,"tag":143,"props":170,"children":172},{"class":171},"ct-642681",[173],{"type":19,"value":174},"--oneline",{"type":14,"tag":15,"props":176,"children":177},{},[178,180,184,186,191,193,198],{"type":19,"value":179},"그런 다음 해시를 복사하고 ",{"type":14,"tag":63,"props":181,"children":182},{},[183],{"type":19,"value":113},{"type":19,"value":185}," 브랜치로 체크아웃합니다. 마지막으로 ",{"type":14,"tag":63,"props":187,"children":188},{},[189],{"type":19,"value":190},"git cherry-pick",{"type":19,"value":192}," 명령을 사용하고 복사한 ",{"type":14,"tag":63,"props":194,"children":195},{},[196],{"type":19,"value":197},"hash",{"type":19,"value":199},"를 인수로 전달합니다.",{"type":14,"tag":128,"props":201,"children":204},{"className":202,"code":203,"language":133,"meta":7},[131],"git checkout feat/awesome-feature\ngit cherry-pick \u003Cthe commit hash>\n",[205],{"type":14,"tag":136,"props":206,"children":207},{},[208],{"type":14,"tag":128,"props":209,"children":210},{"__ignoreMap":7},[211,236],{"type":14,"tag":143,"props":212,"children":213},{"class":145,"line":146},[214,218,222,227,231],{"type":14,"tag":143,"props":215,"children":216},{"class":150},[217],{"type":19,"value":27},{"type":14,"tag":143,"props":219,"children":220},{"class":155},[221],{"type":19,"value":158},{"type":14,"tag":143,"props":223,"children":224},{"class":161},[225],{"type":19,"value":226},"checkout",{"type":14,"tag":143,"props":228,"children":229},{"class":155},[230],{"type":19,"value":158},{"type":14,"tag":143,"props":232,"children":233},{"class":161},[234],{"type":19,"value":235},"feat/awesome-feature\n",{"type":14,"tag":143,"props":237,"children":239},{"class":145,"line":238},2,[240,244,248,253,257,263,268,272,276,280,285,290],{"type":14,"tag":143,"props":241,"children":242},{"class":150},[243],{"type":19,"value":27},{"type":14,"tag":143,"props":245,"children":246},{"class":155},[247],{"type":19,"value":158},{"type":14,"tag":143,"props":249,"children":250},{"class":161},[251],{"type":19,"value":252},"cherry-pick",{"type":14,"tag":143,"props":254,"children":255},{"class":155},[256],{"type":19,"value":158},{"type":14,"tag":143,"props":258,"children":260},{"class":259},"ct-620894",[261],{"type":19,"value":262},"\u003C",{"type":14,"tag":143,"props":264,"children":265},{"class":161},[266],{"type":19,"value":267},"the",{"type":14,"tag":143,"props":269,"children":270},{"class":155},[271],{"type":19,"value":158},{"type":14,"tag":143,"props":273,"children":274},{"class":161},[275],{"type":19,"value":29},{"type":14,"tag":143,"props":277,"children":278},{"class":155},[279],{"type":19,"value":158},{"type":14,"tag":143,"props":281,"children":282},{"class":161},[283],{"type":19,"value":284},"has",{"type":14,"tag":143,"props":286,"children":287},{"class":155},[288],{"type":19,"value":289},"h",{"type":14,"tag":143,"props":291,"children":292},{"class":259},[293],{"type":19,"value":294},">",{"type":14,"tag":15,"props":296,"children":297},{},[298,300,304,306,311],{"type":19,"value":299},"이렇게 하면 수동으로 작업하지 않고도 커밋을 성공적으로 복사할 수 있습니다. 이후 ",{"type":14,"tag":63,"props":301,"children":302},{},[303],{"type":19,"value":74},{"type":19,"value":305},"으로 체크아웃한 뒤 ",{"type":14,"tag":63,"props":307,"children":308},{},[309],{"type":19,"value":310},"git reset",{"type":19,"value":312},"을 사용해 실수로 추가된 커밋을 제거합니다.",{"type":14,"tag":128,"props":314,"children":317},{"className":315,"code":316,"language":133,"meta":7},[131],"git checkout main\ngit reset --hard HEAD~1 # main 브랜치에서 커밋 제거\n",[318],{"type":14,"tag":136,"props":319,"children":320},{},[321],{"type":14,"tag":128,"props":322,"children":323},{"__ignoreMap":7},[324,348],{"type":14,"tag":143,"props":325,"children":326},{"class":145,"line":146},[327,331,335,339,343],{"type":14,"tag":143,"props":328,"children":329},{"class":150},[330],{"type":19,"value":27},{"type":14,"tag":143,"props":332,"children":333},{"class":155},[334],{"type":19,"value":158},{"type":14,"tag":143,"props":336,"children":337},{"class":161},[338],{"type":19,"value":226},{"type":14,"tag":143,"props":340,"children":341},{"class":155},[342],{"type":19,"value":158},{"type":14,"tag":143,"props":344,"children":345},{"class":161},[346],{"type":19,"value":347},"main\n",{"type":14,"tag":143,"props":349,"children":350},{"class":145,"line":238},[351,355,359,364,368,373,377,382,387,391],{"type":14,"tag":143,"props":352,"children":353},{"class":150},[354],{"type":19,"value":27},{"type":14,"tag":143,"props":356,"children":357},{"class":155},[358],{"type":19,"value":158},{"type":14,"tag":143,"props":360,"children":361},{"class":161},[362],{"type":19,"value":363},"reset",{"type":14,"tag":143,"props":365,"children":366},{"class":155},[367],{"type":19,"value":158},{"type":14,"tag":143,"props":369,"children":370},{"class":171},[371],{"type":19,"value":372},"--hard",{"type":14,"tag":143,"props":374,"children":375},{"class":155},[376],{"type":19,"value":158},{"type":14,"tag":143,"props":378,"children":379},{"class":161},[380],{"type":19,"value":381},"HEAD~",{"type":14,"tag":143,"props":383,"children":384},{"class":171},[385],{"type":19,"value":386},"1",{"type":14,"tag":143,"props":388,"children":389},{"class":155},[390],{"type":19,"value":158},{"type":14,"tag":143,"props":392,"children":394},{"class":393},"ct-463487",[395],{"type":19,"value":396},"# main 브랜치에서 커밋 제거",{"type":14,"tag":92,"props":398,"children":400},{"id":399},"커밋하지-않고-적용하기",[401],{"type":19,"value":402},"커밋하지 않고 적용하기",{"type":14,"tag":15,"props":404,"children":405},{},[406,408,413,415,420],{"type":19,"value":407},"커밋을 바로 만들지 않고 먼저 커밋을 복사한 뒤 수정할 때 유용합니다. 이 경우 ",{"type":14,"tag":63,"props":409,"children":410},{},[411],{"type":19,"value":412},"--no-commit",{"type":19,"value":414},"의 줄임말인 ",{"type":14,"tag":63,"props":416,"children":417},{},[418],{"type":19,"value":419},"-n",{"type":19,"value":421}," 플래그를 사용합니다.",{"type":14,"tag":128,"props":423,"children":426},{"className":424,"code":425,"language":133,"meta":7},[131],"git cherry-pick -n \u003Chash>\n# 약간 수정...\ngit commit -m \"Applied fix with adjustments\"\n",[427],{"type":14,"tag":136,"props":428,"children":429},{},[430],{"type":14,"tag":128,"props":431,"children":432},{"__ignoreMap":7},[433,477,485],{"type":14,"tag":143,"props":434,"children":435},{"class":145,"line":146},[436,440,444,448,452,456,460,464,468,472],{"type":14,"tag":143,"props":437,"children":438},{"class":150},[439],{"type":19,"value":27},{"type":14,"tag":143,"props":441,"children":442},{"class":155},[443],{"type":19,"value":158},{"type":14,"tag":143,"props":445,"children":446},{"class":161},[447],{"type":19,"value":252},{"type":14,"tag":143,"props":449,"children":450},{"class":155},[451],{"type":19,"value":158},{"type":14,"tag":143,"props":453,"children":454},{"class":171},[455],{"type":19,"value":419},{"type":14,"tag":143,"props":457,"children":458},{"class":155},[459],{"type":19,"value":158},{"type":14,"tag":143,"props":461,"children":462},{"class":259},[463],{"type":19,"value":262},{"type":14,"tag":143,"props":465,"children":466},{"class":161},[467],{"type":19,"value":284},{"type":14,"tag":143,"props":469,"children":470},{"class":155},[471],{"type":19,"value":289},{"type":14,"tag":143,"props":473,"children":474},{"class":259},[475],{"type":19,"value":476},">\n",{"type":14,"tag":143,"props":478,"children":479},{"class":145,"line":238},[480],{"type":14,"tag":143,"props":481,"children":482},{"class":393},[483],{"type":19,"value":484},"# 약간 수정...\n",{"type":14,"tag":143,"props":486,"children":488},{"class":145,"line":487},3,[489,493,497,501,505,510,514],{"type":14,"tag":143,"props":490,"children":491},{"class":150},[492],{"type":19,"value":27},{"type":14,"tag":143,"props":494,"children":495},{"class":155},[496],{"type":19,"value":158},{"type":14,"tag":143,"props":498,"children":499},{"class":161},[500],{"type":19,"value":29},{"type":14,"tag":143,"props":502,"children":503},{"class":155},[504],{"type":19,"value":158},{"type":14,"tag":143,"props":506,"children":507},{"class":171},[508],{"type":19,"value":509},"-m",{"type":14,"tag":143,"props":511,"children":512},{"class":155},[513],{"type":19,"value":158},{"type":14,"tag":143,"props":515,"children":516},{"class":161},[517],{"type":19,"value":518},"\"Applied fix with adjustments\"",{"type":14,"tag":92,"props":520,"children":522},{"id":521},"충돌-처리하기",[523],{"type":19,"value":524},"충돌 처리하기",{"type":14,"tag":15,"props":526,"children":527},{},[528],{"type":19,"value":529},"체리픽은 병합과 마찬가지로 여전히 충돌이 발생할 수 있습니다. 이럴 때는 수동으로 해결한 뒤 체리픽을 계속하거나 중단할 수 있습니다.",{"type":14,"tag":128,"props":531,"children":534},{"className":532,"code":533,"language":133,"meta":7},[131],"git cherry-pick \u003Chash>\n# 충돌 발생! git이 여기서 일시 중지하기\n\n# 1. 충돌한 파일 수정\n# 2. 스테이징\ngit add \u003Cfixed-files>\n\n# 3. 체리픽 계속하기\ngit cherry-pick --continue\n\n# 또는, 중단하기\ngit cherry-pick --abort\n",[535],{"type":14,"tag":136,"props":536,"children":537},{},[538],{"type":14,"tag":128,"props":539,"children":540},{"__ignoreMap":7},[541,576,584,592,601,610,649,657,666,691,699,708],{"type":14,"tag":143,"props":542,"children":543},{"class":145,"line":146},[544,548,552,556,560,564,568,572],{"type":14,"tag":143,"props":545,"children":546},{"class":150},[547],{"type":19,"value":27},{"type":14,"tag":143,"props":549,"children":550},{"class":155},[551],{"type":19,"value":158},{"type":14,"tag":143,"props":553,"children":554},{"class":161},[555],{"type":19,"value":252},{"type":14,"tag":143,"props":557,"children":558},{"class":155},[559],{"type":19,"value":158},{"type":14,"tag":143,"props":561,"children":562},{"class":259},[563],{"type":19,"value":262},{"type":14,"tag":143,"props":565,"children":566},{"class":161},[567],{"type":19,"value":284},{"type":14,"tag":143,"props":569,"children":570},{"class":155},[571],{"type":19,"value":289},{"type":14,"tag":143,"props":573,"children":574},{"class":259},[575],{"type":19,"value":476},{"type":14,"tag":143,"props":577,"children":578},{"class":145,"line":238},[579],{"type":14,"tag":143,"props":580,"children":581},{"class":393},[582],{"type":19,"value":583},"# 충돌 발생! git이 여기서 일시 중지하기\n",{"type":14,"tag":143,"props":585,"children":586},{"class":145,"line":487},[587],{"type":14,"tag":143,"props":588,"children":589},{},[590],{"type":19,"value":591},"\n",{"type":14,"tag":143,"props":593,"children":595},{"class":145,"line":594},4,[596],{"type":14,"tag":143,"props":597,"children":598},{"class":393},[599],{"type":19,"value":600},"# 1. 충돌한 파일 수정\n",{"type":14,"tag":143,"props":602,"children":604},{"class":145,"line":603},5,[605],{"type":14,"tag":143,"props":606,"children":607},{"class":393},[608],{"type":19,"value":609},"# 2. 스테이징\n",{"type":14,"tag":143,"props":611,"children":613},{"class":145,"line":612},6,[614,618,622,627,631,635,640,645],{"type":14,"tag":143,"props":615,"children":616},{"class":150},[617],{"type":19,"value":27},{"type":14,"tag":143,"props":619,"children":620},{"class":155},[621],{"type":19,"value":158},{"type":14,"tag":143,"props":623,"children":624},{"class":161},[625],{"type":19,"value":626},"add",{"type":14,"tag":143,"props":628,"children":629},{"class":155},[630],{"type":19,"value":158},{"type":14,"tag":143,"props":632,"children":633},{"class":259},[634],{"type":19,"value":262},{"type":14,"tag":143,"props":636,"children":637},{"class":161},[638],{"type":19,"value":639},"fixed-file",{"type":14,"tag":143,"props":641,"children":642},{"class":155},[643],{"type":19,"value":644},"s",{"type":14,"tag":143,"props":646,"children":647},{"class":259},[648],{"type":19,"value":476},{"type":14,"tag":143,"props":650,"children":652},{"class":145,"line":651},7,[653],{"type":14,"tag":143,"props":654,"children":655},{},[656],{"type":19,"value":591},{"type":14,"tag":143,"props":658,"children":660},{"class":145,"line":659},8,[661],{"type":14,"tag":143,"props":662,"children":663},{"class":393},[664],{"type":19,"value":665},"# 3. 체리픽 계속하기\n",{"type":14,"tag":143,"props":667,"children":669},{"class":145,"line":668},9,[670,674,678,682,686],{"type":14,"tag":143,"props":671,"children":672},{"class":150},[673],{"type":19,"value":27},{"type":14,"tag":143,"props":675,"children":676},{"class":155},[677],{"type":19,"value":158},{"type":14,"tag":143,"props":679,"children":680},{"class":161},[681],{"type":19,"value":252},{"type":14,"tag":143,"props":683,"children":684},{"class":155},[685],{"type":19,"value":158},{"type":14,"tag":143,"props":687,"children":688},{"class":171},[689],{"type":19,"value":690},"--continue\n",{"type":14,"tag":143,"props":692,"children":694},{"class":145,"line":693},10,[695],{"type":14,"tag":143,"props":696,"children":697},{},[698],{"type":19,"value":591},{"type":14,"tag":143,"props":700,"children":702},{"class":145,"line":701},11,[703],{"type":14,"tag":143,"props":704,"children":705},{"class":393},[706],{"type":19,"value":707},"# 또는, 중단하기\n",{"type":14,"tag":143,"props":709,"children":711},{"class":145,"line":710},12,[712,716,720,724,728],{"type":14,"tag":143,"props":713,"children":714},{"class":150},[715],{"type":19,"value":27},{"type":14,"tag":143,"props":717,"children":718},{"class":155},[719],{"type":19,"value":158},{"type":14,"tag":143,"props":721,"children":722},{"class":161},[723],{"type":19,"value":252},{"type":14,"tag":143,"props":725,"children":726},{"class":155},[727],{"type":19,"value":158},{"type":14,"tag":143,"props":729,"children":730},{"class":171},[731],{"type":19,"value":732},"--abort",{"type":14,"tag":92,"props":734,"children":736},{"id":735},"참고",[737],{"type":19,"value":735},{"type":14,"tag":739,"props":740,"children":745},"apa-reference",{"source":741,"title":742,"url":743,"date":744},"websites","git-cherry-pick","https://git-scm.com/docs/git-cherry-pick","2026, April 20",[],{"type":14,"tag":739,"props":747,"children":752},{"source":741,"title":748,"url":749,"publisher":750,"retrievedDate":751},"Git cherry pick","https://www.atlassian.com/git/tutorials/cherry-pick","Atlassian","2026, May 17",[],{"type":14,"tag":754,"children":755},"style",[756],{"type":19,"value":757},".ct-255010{color:#953800;}\n.dark .ct-255010{color:#FFA657;}\n.ct-947867{color:#24292F;}\n.dark .ct-947867{color:#C9D1D9;}\n.ct-094461{color:#0A3069;}\n.dark .ct-094461{color:#A5D6FF;}\n.ct-642681{color:#0550AE;}\n.dark .ct-642681{color:#79C0FF;}\n.ct-620894{color:#CF222E;}\n.dark .ct-620894{color:#FF7B72;}\n.ct-463487{color:#6E7781;}\n.dark .ct-463487{color:#8B949E;}",{"title":7,"searchDepth":238,"depth":238,"links":759},[760,761,762,763],{"id":94,"depth":238,"text":97},{"id":399,"depth":238,"text":402},{"id":521,"depth":238,"text":524},{"id":735,"depth":238,"text":735},"markdown","content:ko:articles:general:git-cherrypick.md","content","ko/articles/general/git-cherrypick.md","md"]