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

ดึงการเปลี่ยนแปลงจากพื้นที่เก็บข้อมูลระยะไกลและรวมเข้ากับสาขาปัจจุบันของพื้นที่เก็บข้อมูล Git

3
Git - ความแตกต่างระหว่าง push.default“ การจับคู่” กับ“ ง่าย ๆ ” คืออะไร
ตอนนี้ฉันใช้คอมไพล์มาซักพักแล้ว แต่ฉันไม่เคยตั้ง repo ทางไกลตัวใหม่มาก่อนและฉันก็อยากรู้อยากเห็น ฉันได้อ่านบทช่วยสอนและฉันสับสนในการรับ "git push" ในการทำงาน ถ้าฉันเพียงแค่ใช้git pushมันขอให้ฉันดูสาขาเริ่มต้น (?) เพื่อชี้ไปที่? ความแตกต่างระหว่างสองตัวเลือกนี้มันให้ฉันเป็นอย่างไร git config --global push.default matching git config --global push.default simple การจับคู่เพียงแค่ผลักสาขาใดก็ตามที่ฉันมีใน repo ท้องถิ่นของฉันและถ้าพวกเขาไม่ตรงกับที่ฉันต้องบอกด้วยตนเองเพื่อผลักดันสิ่งที่สาขาท้องถิ่นใหม่ที่ฉันมีถูกต้อง? นี่เป็นวิธีปฏิบัติที่ดีที่สุดในการใช้หรือง่ายที่สุด?

6
วิธีดึงสาขาระยะไกลจาก repo ของคนอื่น
ฉันมีโปรเจ็กต์ที่โฮสต์บน GitHub ที่บางคนเคยแยก พวกเขาได้สร้างสาขาใหม่ "foo" และทำการเปลี่ยนแปลงบางอย่าง ฉันจะดึง "foo" ของพวกเขาไปยังสาขาใหม่ที่ชื่อ "foo" ใน repo ของฉันได้อย่างไร ฉันเข้าใจว่าพวกเขาสามารถส่งคำขอดึงให้ฉันได้ แต่ฉันต้องการเริ่มกระบวนการนี้เอง สมมติว่าต่อไปนี้: เนื่องจากพวกเขาแยกโครงการของฉันทั้งสอง repos ของเราแบ่งปัน 'ประวัติศาสตร์' เดียวกัน แม้ว่า GitHub จะแสดงว่าโครงการของพวกเขาถูกแยกออกจากเหมือง แต่ที่เก็บในเครื่องของฉันก็ไม่มีการอ้างอิงถึงโครงการของบุคคลนี้ ฉันต้องเพิ่มรายการเหล่านั้นเป็นรีโมทหรือไม่ ฉันยังไม่มีสาขาชื่อ "foo" แต่ฉันไม่รู้ว่าฉันต้องสร้างด้วยตนเองก่อนหรือไม่ ฉันต้องการให้สิ่งนี้ดึงเข้าไปในสาขาที่แยกต่างหากไม่ใช่อาจารย์ของฉัน


5
FETCH_HEAD ใน Git หมายถึงอะไร
git pull --help พูดว่า: ในโหมดเริ่มต้นของgit pullคือชวเลขตามมาด้วยgit fetchgit merge FETCH_HEAD นี้คืออะไรFETCH_HEADและสิ่งที่ผสานระหว่างจริงgit pull?
221 git  git-pull  git-fetch 

7
ฉันจะบังคับให้ git pull เขียนทับทุกอย่างบน pull ทุกครั้งได้อย่างไร
ฉันมีที่เก็บข้อมูลส่วนกลาง CENTRAL ที่มีที่เก็บนักพัฒนาซอฟต์แวร์สามแห่งที่ดึงและผลักดันตามปกติ ฉันยังมีที่เก็บอื่นอีกสองแห่งที่ดึงมาจาก CENTRAL bare repo: หนึ่งคือเซิร์ฟเวอร์สดและอีกอันคือเซิร์ฟเวอร์ทดสอบ / สเตจ - แต่ละอันดึงจากสาขาของตนเอง สถานการณ์นี้คือ: ฉันมีpost-updateเบ็ดสคริปต์บน repo CENTRAL ที่เข้าถึงการทดสอบและ repos สดโดยอัตโนมัติและเรียกใช้คำสั่งดึงในแต่ละ การอัปเดตนี้จะทดสอบทั้งเซิร์ฟเวอร์ทดสอบและเซิร์ฟเวอร์จริงทั้งนี้ขึ้นอยู่กับว่าสาขาใดมีคอมมิทใหม่ ทั้งหมดนี้ใช้งานได้ดี ปัญหาคือ: อาจมีบางครั้งในกรณีฉุกเฉินที่ไฟล์อาจถูกอัพเดตโดยตรงบนเซิร์ฟเวอร์ (ผ่านทาง ftp หรืออะไรก็ตาม) และสคริปต์หลังการอัพเดต CENTRAL จะล้มเหลวเนื่องจากข้อขัดแย้งผสาน / เขียนทับจะเกิดขึ้น ไม่มีวิธีที่จะหลีกเลี่ยงสถานการณ์นี้และหลีกเลี่ยงไม่ได้ สิ่งที่ฉันต้องการที่จะมีเกิดขึ้นคือ: ฉันต้องการดึงจากเว็บไซต์ที่อยู่อาศัยและการทดสอบเพื่อเสมอเขียนทับ / ผสานดึง เสมอ. repos เหล่านี้จะถูกดึงอย่างเดียวเนื่องจากไม่ใช่เพื่อการพัฒนา ในการวิจัยทั้งหมดของฉันฉันไม่สามารถหาทางออกที่ดีในการดึงเสมอบังคับให้เขียนทับไฟล์ท้องถิ่น เป็นไปได้ไหม? มันจะทำให้สถานการณ์การพัฒนาที่ดีถ้าเป็นเช่นนั้น
203 git  git-pull 

10
ทำไม git ถึงบอกว่า“ pull เป็นไปไม่ได้เพราะคุณมี unmerged files”?
เมื่อฉันพยายามดึงไดเรกทอรีโครงการของฉันใน terminal ฉันเห็นข้อผิดพลาดต่อไปนี้: harsukh@harsukh-desktop:~/Sites/branch1$ git pull origin master U app/config/app.php U app/config/database.php U app/routes.php Pull is not possible because you have unmerged files. Please, fix them up in the work tree, and then use 'git add/rm <file>' as appropriate to mark resolution, or use 'git commit -a'. ทำไม git ถึงพูด"Pull …

5
เป็นไปได้หรือไม่ที่จะดึงไฟล์หนึ่งไฟล์ใน Git?
ฉันกำลังทำงานในสาขา Git ที่มีการทดสอบที่ไม่สมบูรณ์และฉันต้องการดึง (รวมการเปลี่ยนแปลงไม่ใช่แค่เขียนทับ) การทดสอบเหล่านี้จากสาขาอื่นที่พวกเขาได้รับการแก้ไขแล้ว ฉันรู้ว่าฉันสามารถทำ git pull origin that_other_branch แต่สิ่งนี้จะพยายามรวมไฟล์อื่น ๆ จำนวนมากเนื่องจากฉันยังไม่พร้อม เป็นไปได้ที่จะดึงและรวมเฉพาะไฟล์ที่ระบุ (ไม่ใช่ทุกอย่าง) จากสาขาอื่นหรือไม่? นี่ไม่ใช่การดึงคำขอ Git ที่ซ้ำกันเพียงไฟล์เดียวเนื่องจากคำตอบทั้งหมดสำหรับคำถามนั้นเป็นวิธีการแปลงไฟล์ที่ถูกเปลี่ยนภายในเครื่องกลับไปเป็นเวอร์ชันที่เก็บข้อมูลโดยไม่ต้องเปลี่ยนสาขาใด ๆ

8
กำลังพยายามดึงไฟล์จากที่เก็บ Github ของฉัน:“ ปฏิเสธที่จะรวมประวัติที่ไม่เกี่ยวข้อง”
ฉันเรียน git และฉันกำลังติดตามหนังสือชุมชน Git ก่อนหน้านี้ (นานมาแล้ว) ฉันสร้างที่เก็บข้อมูลสาธารณะบน Github ด้วยไฟล์บางไฟล์ ตอนนี้ฉันตั้งค่าที่เก็บ Git ในเครื่องบนคอมพิวเตอร์ปัจจุบันของฉันและส่งไฟล์บางไฟล์ จากนั้นฉันเพิ่มรีโมตชี้ไปที่หน้า Github ของฉัน: [root@osboxes c]# git remote add learnc https://github.com/michaelklachko/Learning-C ดูเหมือนว่าจะประสบความสำเร็จ: [root@osboxes c]# git remote show learnc * remote learnc Fetch URL: https://github.com/michaelklachko/Learning-C Push URL: https://github.com/michaelklachko/Learning-C HEAD branch: master Remote branch: master tracked Local ref configured for 'git …

3
ทำไมคอมไพล์แจ้งให้ฉันสำหรับโพสต์การดึงจดหมายเวียน?
เมื่อเร็ว ๆ นี้การติดตามใด ๆgit pullคอมไพล์เริ่มวางไข่แก้ไขข้อความของฉันและขอรวมข้อความกระทำ ข้อความคอมมิชชันได้ถูกเติมไว้ล่วงหน้าแล้วและฉันเพียงแค่ต้องบันทึกและปิดหน้าต่างเพื่อดึงให้เสร็จสมบูรณ์ ในอดีตมันจะทำการผสานอย่างเงียบ ๆ พร้อมกับข้อความส่งข้อความมาตรฐาน (ตามแนวของMerge branch 'dev' of remote.com:/repo into dev) ฉันเพิ่งอัปเดตคอมไพล์เป็น 1.7.11.3 เวอร์ชัน (ผ่าน homebrew) แต่ไม่สามารถคิดอะไรอีกเลยที่ฉันอาจทำเพื่อเปลี่ยนพฤติกรรมนี้ นี่เป็นการตั้งค่าหรือมีวิธีอื่นในการกลับไปสู่วิธีเดิมไหม?
142 git  git-pull 

1
วิธีการเปิดปัญหาใน GitHub อีกครั้ง?
ฉันได้รายงานปัญหาไปยังโครงการแล้ว ตอนนี้เจ้าของเปลี่ยนสถานะเป็นปิดแล้ว แต่ฉันจะเปลี่ยนเป็นเปิดอีกครั้งได้อย่างไร ฉันอ่านบางที่ฉันต้องการสิทธิ์ในการผลักและดึง มันเป็นเรื่องจริงเหรอ?
142 git  github  git-push  git-pull 

14
แท็กการชำระเงิน git การดึงคอมไพล์ล้มเหลวในสาขา
ฉันได้โคลนที่เก็บ git แล้วตรวจสอบแท็ก: # git checkout 2.4.33 -b my_branch ไม่เป็นไร แต่เมื่อฉันพยายามเรียกใช้git pullในสาขาของฉันคอมไพล์พ่นข้อผิดพลาดนี้: ไม่มีข้อมูลการติดตามสำหรับสาขาปัจจุบัน โปรดระบุสาขาที่คุณต้องการรวมเข้าด้วยกัน ดู git-pull (1) สำหรับรายละเอียด git pull <remote> <branch> หากคุณต้องการตั้งค่าข้อมูลการติดตามสำหรับสาขานี้คุณสามารถทำได้โดย: git branch --set-upstream new origin/<branch> ฉันต้องการgit pullอัปเดตสาขาหลักเท่านั้นและปล่อยให้สาขาปัจจุบันของฉันอยู่คนเดียว (มันเป็นแท็กอยู่ดี) สิ่งนี้เป็นไปได้หรือไม่? เหตุผลที่ฉันต้องการสิ่งนี้คือฉันมีสคริปต์อัตโนมัติที่ git ดึงที่เก็บเสมอและแน่นอนว่าล้มเหลวเนื่องจากข้อผิดพลาดด้านบน ..

4
การเปลี่ยนแปลงรายละเอียดหลังจากดึง Git
หลังจากการดึง Git ผลลัพธ์จะให้ข้อมูลสรุปเกี่ยวกับจำนวนเงินที่เปลี่ยนแปลง ฉันจะดูการเปลี่ยนแปลงโดยละเอียดแต่ละไฟล์หรือบางไฟล์ได้อย่างไร โอเคนี่คือคำถามของฉันสำหรับ Jefromi: ฉันจะรู้ได้อย่างไรว่าฉันถูกดึงให้เชี่ยวชาญ? ทั้งหมดที่ฉันทำคือ "git pull" master ชี้ไปที่อะไรและอะไรคือความแตกต่างระหว่าง master และ HEAD ซึ่งเป็นสองหัวเริ่มต้นของ Git ฉันจะดูการเปลี่ยนแปลงโดยละเอียดในไฟล์เฉพาะได้อย่างไร ฉันจะเห็นการเปลี่ยนแปลงในผลลัพธ์สรุปในครั้งสุดท้ายgit pullอีกครั้งได้อย่างไร อะไรคือความแตกต่างระหว่างgit diffและgit whatchanged?
130 git  git-pull 

2
คุณขอให้ฉันดึงโดยไม่บอกฉันว่าคุณต้องการรวมกับสาขาใด
TL; DR: ฉันมีสาขา "ติดตาม" ที่ดึงไม่ได้ ดังนั้นฉันจึงอยู่ใน "bucket-4": $ git branch -v bucket-1 410f7b5 * gh-53 * gh-48 * "Share App" bucket-2 7ed70a2 * upgrade to SOLR 3.3.0 bucket-3 400ffe4 * emergency fix prod issue * bucket-4 64c2414 Merge branch 'bucket-3' into bucket-4 master 8dc4854 [ahead 1] * gh-73 ฉันต้องการดึงการเปลี่ยนแปลงจากรีโมทของฉัน: $ …
125 git  git-pull 

5
"git pull" สามารถซ่อนและป๊อปการเปลี่ยนแปลงที่รอดำเนินการโดยอัตโนมัติได้หรือไม่
ฉันรู้วิธีแก้ปัญหานี้: user@host$ git pull Updating 9386059..6e3ffde error: Your local changes to the following files would be overwritten by merge: foo.bar Please, commit your changes or stash them before you can merge. Aborting แต่ไม่ได้มีวิธีการที่จะให้git pullทำstashและpopการเต้นรำสำหรับฉันหรือไม่ หากคำสั่งนี้มีชื่ออื่นก็ใช้ได้ การสร้างนามแฝงเชลล์git stash; git pull; git stash popเป็นวิธีแก้ปัญหา แต่ฉันค้นหาโซลูชันที่ดีกว่า
122 git  git-pull  git-stash 

1
ความแตกต่างระหว่าง git pull --rebase และ git pull --ff-only
สมมติว่าorigin/masterมีการกระทำA--B--Cของฉันและมีการกระทำlocal/masterA--B--D จะเกิดอะไรขึ้นถ้าฉันใช้git pull --rebase? จะเกิดอะไรขึ้นถ้าฉันใช้git pull --ff-only? มีความแตกต่างในโครงสร้างการคอมมิตที่เกิดขึ้นหรือไม่?
116 git  git-rebase  git-pull 

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