คำถามติดแท็ก git

Git เป็นระบบควบคุมเวอร์ชันแจกจ่ายแบบโอเพนซอร์ซ (DVCS) ใช้แท็กนี้สำหรับคำถามที่เกี่ยวข้องกับการใช้งาน Git และเวิร์กโฟลว์ อย่าใช้แท็ก [github] สำหรับปัญหาที่เกี่ยวข้องกับ Git เพียงเพราะพื้นที่เก็บข้อมูลเกิดขึ้นเพื่อโฮสต์บน GitHub นอกจากนี้อย่าใช้แท็กนี้สำหรับคำถามการเขียนโปรแกรมทั่วไปที่เกี่ยวข้องกับที่เก็บ Git

9
ชำระเงินไดเรกทอรีย่อยใน Git หรือไม่
เป็นไปได้ไหมที่จะตรวจสอบไดเรกทอรีย่อยของที่เก็บใน Git? ลองนึกภาพฉันกำลังตั้งค่าการติดตั้ง WordPress ใหม่ ฉันจะสร้างสองไดเรกทอรีใหม่สำหรับปลั๊กอินและการปรับแต่งธีมของฉัน: wordpress/wp-content/plugins/myplugins/ wordpress/wp-content/themes/mytheme/ ฉันต้องการบำรุงรักษาไดเรกทอรีเหล่านี้ผ่าน Git ในการโค่นล้มฉันจะทำสิ่งนี้โดยมีtrunk/myplugins/และทำtrunk/mytheme/ไดเรกทอรีและตรวจสอบไดเรกทอรีย่อย Git มีวิธีการในการทำงานเดียวกันให้สำเร็จด้วยการใช้แหล่งเก็บข้อมูลเดียวหรือไม่? ฉันอาจพลาดเรือในกระบวนทัศน์ Git บางอย่างซึ่งเป็นเวลานานสำหรับผู้ใช้ SVN ที่มีการเปิดรับ Git น้อย แก้ไข: หลายสาขาจัดเก็บเนื้อหาที่แตกต่างกันเป็นวิธีที่น่าสนใจในการจัดการเรื่องนี้

9
วิธีการลบ. orig ไฟล์หลังจากผสานจากที่เก็บ git?
วิธีตรวจสอบไฟล์. orig ในที่เก็บ git ของฉันในระหว่างการรวมซึ่งตอนนี้จะแสดงในส่วนที่ถูกแก้ไขและไม่ได้ติดตาม แต่ฉันไม่ต้องการให้ไฟล์นี้ในที่เก็บของฉันอีกต่อไป วิธีการทำ modified: Gemfile.lock.orig # modified: Gemfile.orig # modified: app/assets/images/bg_required.png.orig # modified: app/assets/javascripts/application.js.orig etc... ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชม.
160 git 

5
คุณจะผลักดันคอมไพล์ท้องถิ่นบางรายการของคุณได้อย่างไร
สมมติว่าฉันมี 5 ข้อผูกพันในท้องถิ่น ฉันต้องการเพียงแค่ 2 ของพวกเขาไปที่ repo ส่วนกลาง (ใช้เวิร์กโฟลว์สไตล์ SVN) ฉันจะทำสิ่งนี้ได้อย่างไร สิ่งนี้ไม่ทำงาน: git checkout HEAD~3 #set head to three commits ago git push #attempt push from that head ที่จบลงด้วยการผลักดันทั้ง 5 กระทำในท้องถิ่น ฉันคิดว่าฉันสามารถทำการ git reset เพื่อเลิกทำการคอมมิชชันของฉันตามด้วย git stash แล้ว git push - แต่ฉันได้รับข้อความที่เขียนและการจัดระเบียบไฟล์แล้วและฉันไม่ต้องการทำซ้ำ ฉันรู้สึกว่าธงบางอันผ่านไปเพื่อผลักหรือรีเซ็ตจะได้ผล ถ้ามันช่วยได้นี่คือคอมไพล์ของฉัน [ramanujan:~/myrepo/.git]$cat config [core] repositoryformatversion = 0 …

6
ผลผลิตของสาขา git ในต้นไม้เหมือนแฟชั่น
ตอนนี้เมื่อฉันพิมพ์ "git branch" มันแสดงรายการสาขาของฉันตามลำดับโดยพลการ สิ่งที่ฉันต้องการคือถ้า "สาขา git" แสดงรายการของฉันในต้นไม้เช่นแฟชั่น, somethign ชอบ: master |-- foo |-- foo1 |-- foo2 |-- bar |-- bar4 ที่นี่ foo & bar แยกจากต้นแบบ foo1 & foo2 แยกจาก foo; bar4 แยกจากบาร์ มันง่ายที่จะสำเร็จหรือไม่? [โปรแกรมอรรถประโยชน์บรรทัดคำสั่งเท่านั้น สิ่งนี้ต้องพอดีกับเวิร์กโฟลว์ zsh / vim ของฉัน]
160 git 

5
จะดึงคำขอหน้า wiki บน GitHub ได้อย่างไร
ฉันเห็นหน้าวิกิบนGitHubที่ไม่เปิดให้แก้ไข จากนั้นฉันแยกโครงการแก้ไขบน "จุดสิ้นสุดของฉัน" และพยายามทำการร้องขอการดึง ปรากฎว่าวิกิไม่ได้อยู่ในโครงการและไม่มีวิธีใดที่จะยอมรับการเปลี่ยนแปลง นอกเหนือจากการส่งอีเมลมีวิธีดำเนินการต่อหรือไม่หากฉันต้องการแนะนำการเปลี่ยนแปลงของวิกิในกรณีนี้ ณ จุดนี้ฉันพบสิ่งที่ดูเหมือนเป็นทางเลือกภายใต้ "คำถามที่มีชื่อคล้ายกัน" แต่ฉันยังไม่สามารถดึงคำขอได้ดังนั้นฉันจึงไม่แน่ใจว่า submodules เป็นวิธีที่ดีสำหรับจุดประสงค์นี้ ตอนนี้ฉันเห็นว่าฉันสามารถแยกสาขาออกมาได้ ... อย่างนี้เป็นวิธีไปหรือไม่
160 git  github  wiki 

13
จะติดตามเนื้อหาที่ไม่ได้ติดตามได้อย่างไร
ดูด้านล่างเส้นทึบสำหรับคำถามเดิมของฉัน ฉันมีโฟลเดอร์ในไดเรกทอรีท้องถิ่นที่ไม่ได้ติดตาม เมื่อฉันวิ่งgit statusฉันจะได้รับ: Changed but not updated: modified: vendor/plugins/open_flash_chart_2 (modified content, untracked content) เมื่อฉันพิมพ์git add vendor/plugins/open_flash_chart_2จากนั้นลองgit statusอีกครั้งมันยังคงบอกว่าไม่ได้ติดตาม เกิดอะไรขึ้น? นี่เป็นบทสรุปง่ายๆของครึ่งชั่วโมงล่าสุดของฉัน: พบว่า repo Github ของฉันไม่ได้ติดตามvendor/plugins/open_flash_chart_2ปลั๊กอินของฉัน โดยเฉพาะไม่มีเนื้อหาและมันแสดงลูกศรสีเขียวบนไอคอนโฟลเดอร์ พยายาม git submodule init No submodule mapping found in .gitmodules for path 'vendor/plugins/open_flash_chart_2' พยายาม git submodule add git://github.com/korin/open_flash_chart_2_plugin.git vendor/plugins/open_flash_chart_2 vendor/plugins/open_flash_chart_2 already exists in the index …

3
ฉันจะรวมความมุ่งมั่นเฉพาะจากสาขาหนึ่งไปอีกสาขาหนึ่งใน Git ได้อย่างไร
ฉันมีBranchAซึ่งเป็น 113 BranchBกระทำไปข้างหน้าของ แต่ฉันต้องการเพียงแค่ 10 ข้อสุดท้ายเท่านั้นที่จะBranchAรวมเข้าBranchBด้วยกัน มีวิธีทำเช่นนี้หรือไม่?
159 git  github 

8
ดูความแตกต่างของสาขาด้วย meld?
meld .ฉันรู้ว่าฉันสามารถดูความแตกต่างระหว่างหัวและรัฐในปัจจุบันมี แต่ฉันจะดูความแตกต่างระหว่างสาขาตัวอย่างmasterและdevelกับ meld ได้อย่างไร ในขณะที่ฉันทำตามขั้นตอนต่อไปนี้: เปลี่ยนชื่อโฟลเดอร์สำเนาการทำงาน ตัวอย่างเช่นmv /projectA /projectA_master) โคลนโครงการอีกครั้ง git clone url เปลี่ยนเป็นdevelสาขา cd projectA && git -b devel origin/devel ดูความแตกต่างด้วย meld meld /projectA_Master projectA ไม่มีวิธีที่ง่ายกว่าในการรับผลลัพธ์ที่เหมือนกันในการรวมกันหรือไม่ ฉันแค่ต้องการตรวจสอบการเปลี่ยนแปลงไม่ใช่เพื่อการรวมเข้าด้วยกันเป็นหลัก
159 git  diff  branch  meld 

11
ค้นหาผู้สร้างสาขา Git
ฉันต้องการค้นหาผู้ที่สร้างสาขา ฉันสามารถทำได้ด้วย: git branch -a | xargs -L 1 bash -c 'echo "$1 `git log --pretty=format:"%H %an" $1^..$1`"' _ อย่างไรก็ตามสิ่งนี้จะคืนค่าผู้ส่งครั้งสุดท้ายต่อสาขาไม่จำเป็นต้องเป็นคนที่สร้างสาขา
159 git  git-branch 

6
เลิกทำการผสานโดยดึงคำขอหรือไม่
มีคนยอมรับคำขอดึงซึ่งพวกเขาไม่ควรมี ขณะนี้เรามีรหัสที่ใช้งานไม่ได้รวมอยู่ด้วยคุณจะยกเลิกการดึงคำขอได้อย่างไร ฉันแค่จะย้อนกลับการเปลี่ยนแปลงการกระทำก่อนที่จะรวม แต่ฉันสังเกตเห็นว่ามันรวมอยู่ในกลุ่มของการกระทำ ดังนั้นตอนนี้มีข้อผูกพันเหล่านี้จากบุคคลนี้ตั้งแต่หลายวันก่อนรวม คุณเลิกทำสิ่งนี้ได้อย่างไร

3
ฉันจะใช้ vimdiff เพื่อแก้ไขข้อขัดแย้ง git merge ได้อย่างไร
ฉันเพิ่งรวมสาขากับเจ้านายของฉันและฉันได้Automatic merge failed; fix conflicts and then commit the result.ตอนนี้ฉันวิ่งgit mergetoolและ vimdiff เปิดด้วยภาพด้านล่าง ฉันไม่รู้วิธีใช้ vimdiff แต่ละแผงที่นี่หมายถึงอะไรและฉันควรดำเนินการอย่างไรเพื่อแก้ไขข้อขัดแย้งในการผสาน

6
จะลบสาขาในพื้นที่ได้อย่างไร
ฉันมีต้นแบบและสาขา dev ในที่เก็บของฉัน ฉันต้องการลบสาขาหลักออกจากคอมพิวเตอร์ของฉันเพื่อที่ฉันจะไม่ได้ตั้งใจทำมัน (มันเกิดขึ้น .. ) มีคำถามอยู่ที่นี่เกี่ยวกับวิธีการลบสาขาในพื้นที่และจากระยะไกล แต่ฉันไม่สามารถค้นหาวิธีการลบสาขาในพื้นที่ได้เท่านั้น มีคำตอบหนึ่งที่บอกว่าจะใช้สิ่งนี้: git branch -d local_branch_name แต่ฉันลองมันแล้วสาขาก็ยังปรากฏในแอปพลิเคชัน GitHub
159 git  github 

9
การกำหนดค่าเครื่องมือ diff ด้วย. gitconfig
ฉันจะกำหนดค่า Git ให้ใช้เครื่องมือที่แตกต่างเพื่อกระจายกับไฟล์. gitconfig ได้อย่างไร ฉันมีสิ่งนี้ใน. gitconfig ของฉัน: [diff] tool = git-chdiff #also tried /bin/git-chdiff มันไม่ทำงาน; มันเพิ่งเปิด diff บรรทัดคำสั่งปกติ เมื่อฉันทำ export GIT_EXTERNAL_DIFF=git-chdiff จากนั้นgit diffจะเปิดเครื่องมือ diffing ภายนอก (ดังนั้นฉันรู้ว่าสคริปต์เครื่องมือ diff ภายนอกทำงานได้ดี) ฉันมีสิ่งผิดปกติกับการกำหนดค่า. gitconfig ของฉันสำหรับเครื่องมือ diff หรือไม่
159 git 

8
Git clone / ดึงการแช่แข็งอย่างต่อเนื่องที่“ เก็บคีย์ไว้ในแคช?”
ฉันพยายามโคลน repo จากบัญชี BitBucket ของฉันไปยังแล็ปท็อป Windows 10 ของฉัน (ใช้ GitBash) ฉันทำตามขั้นตอนทั้งหมดที่จำเป็นในการเชื่อมต่อเรียบร้อยแล้ว (ตั้งค่าคีย์ SSH ของฉันได้รับการยืนยันโดย SSHing สำเร็จแล้ว git@bitbucket.org ฯลฯ ) อย่างไรก็ตามเมื่อใดก็ตามที่ฉันพยายามโคลน repo พรอมต์จะวางสายอย่างต่อเนื่องหลังจากยืนยันว่าฉันต้องการแคชคีย์ของ Bitbucket User@Laptop MINGW64 /C/Repos $ git clone git@bitbucket.org:mygbid/test.git Cloning into 'test'... The server's host key is not cached in the registry. You have no guarantee that the server …

1
วิธีเลือกเชอร์รี่จาก 1 สาขาไปยังสาขาอื่น
ฉันมี 2 สาขาmasterและdev. ฉันอยู่ในdevสาขาและฉันต้องการเชอร์รี่เลือก 1 จากกระทำการmaster devดังนั้นฉันทำ $ git cherry-pick be530cec7748e037c665bd5a585e6d9ce11bc8ad Finished one cherry-pick. แต่เมื่อฉันทำgit statusและgitxฉันไม่เห็นความมุ่งมั่นของฉันbe530cec7748e037c665bd5a585e6d9ce11bc8adในประวัติศาสตร์คอมไพล์ ฉันจะเห็นความมุ่งมั่นของฉันในdevสาขาได้อย่างไร?

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.