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

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

5
ฉันจะแยก Git ที่ฝังไว้ในประวัติศาสตร์ได้อย่างไร?
ฉันลบล้างประวัติของฉันและต้องการเปลี่ยนแปลงบางอย่าง ปัญหาคือฉันมีการกระทำที่มีการเปลี่ยนแปลงที่ไม่เกี่ยวข้องสองรายการและการกระทำนี้ล้อมรอบด้วยการเปลี่ยนแปลงอื่น ๆ ในประวัติศาสตร์ท้องถิ่นของฉัน ฉันต้องการแยกการกระทำนี้ออกก่อนที่จะผลักดันออกไป แต่คำแนะนำส่วนใหญ่ที่ฉันเห็นจะเกี่ยวข้องกับการแยกการกระทำล่าสุดของคุณหรือการเปลี่ยนแปลงในท้องถิ่นที่ปราศจากข้อผูกมัด เป็นไปได้ไหมที่จะทำเช่นนี้กับการกระทำที่ฝังอยู่ในประวัติศาสตร์สักเล็กน้อยโดยไม่ต้อง "ทำซ้ำ" หลังจากนั้น?

20
วิธีแก้ไขข้อผิดพลาด“ ไม่ใช่สิ่งที่เราสามารถผสาน” ของคอมไพล์ได้
ฉันเพิ่งพบปัญหาเมื่อรวมสาขาเป็นหลักในคอมไพล์ git ls-remoteครั้งแรกผมได้ชื่อสาขาโดยใช้ เรียกสาขานั้นว่า "branch-name" จากนั้นฉันก็รันgit merge branch-nameคำสั่งและรับผลลัพธ์ต่อไปนี้: fatal: branch-name - not something we can merge ฉันจะแก้ไขข้อผิดพลาดนี้ได้อย่างไร


3
ลดขนาดพื้นที่เก็บข้อมูลคอมไพล์
ฉันพยายามมองหาบทช่วยสอนที่ดีเกี่ยวกับการลดขนาด repo แต่ไม่พบใคร ฉันจะลดขนาด repo ของฉันได้อย่างไร ... ประมาณ 10 MB แต่สิ่งที่ Heroku อนุญาตให้มีเพียง 50 MB เท่านั้นและฉันไม่ได้พัฒนาแอพของฉันใกล้เสร็จแล้ว ฉันได้เพิ่มผู้ต้องสงสัยตามปกติ (บันทึกผู้ขายเอกสาร ฯลฯ ) ไปยัง. gitignore แล้ว แม้ว่าฉันเพิ่งเพิ่ม. gitignore เมื่อเร็ว ๆ นี้ ข้อเสนอแนะใด ๆ
290 git  git-clean 

9
วิธีการ Git สะสมป๊อปสะสมเฉพาะใน 1.8.3?
ฉันเพิ่งอัพเกรด Git ฉันใช้ Git เวอร์ชั่น 1.8.3 เช้านี้ฉันพยายามที่จะปลดการเปลี่ยนแปลง 1 ในสแต็กลึก ฉันวิ่งgit stash pop stash@{1}และได้รับข้อผิดพลาดนี้ ร้ายแรง: อาร์กิวเมนต์ที่คลุมเครือ 'stash @ 1': การแก้ไขที่ไม่รู้จักหรือเส้นทางที่ไม่ได้อยู่ในแผนผังการทำงาน ใช้ '-' เพื่อแยกเส้นทางจากการแก้ไขเช่นนี้: 'git [... ] - [... ]' ฉันได้ลองใช้รูปแบบนี้มากกว่า 20 รูปแบบรวมถึงใช้applyแทนpopโดยไม่ประสบความสำเร็จ มีอะไรเปลี่ยนแปลงบ้าง? ใครบ้างที่พบสิ่งนี้
290 git  escaping  git-stash 

5
ใน Git อะไรคือความแตกต่างระหว่างต้นฉบับ / ต้นแบบกับต้นแบบต้นฉบับ?
ฉันรู้ว่าต้นกำเนิดเป็นคำศัพท์สำหรับพื้นที่เก็บข้อมูลระยะไกลและต้นแบบเป็นสาขาที่นั่น ฉันตั้งใจละเว้น "บริบท" ที่นี่และฉันหวังว่าคำตอบไม่ควรขึ้นอยู่กับบริบท ดังนั้นในบรรทัดคำสั่ง git ความแตกต่างระหว่างOrigin / MasterและOrigin masterคืออะไร มีวิธีที่ไม่ชัดเจนที่จะเข้าใจว่าจะใช้Origin / Masterเมื่อใดและควรใช้Origin Masterหรือไม่?
290 git 

10
git: patch ใช้ไม่ได้
ฉันมีแพทช์บางตัวที่เรียกว่า my_pcc_branch.patch เมื่อฉันพยายามที่จะใช้มันฉันได้รับข้อความต่อไปนี้: $ git apply --check my_pcc_branch.patch warning: src/main/java/.../AbstractedPanel.java has type 100644, expected 100755 error: patch failed: src/main/java/.../AbstractedPanel.java:13 error: src/main/java/.../AbstractedPanel.java: patch does not apply มันหมายความว่าอะไร? ฉันจะแก้ไขปัญหานี้ได้อย่างไร
289 git  msysgit 

5
อะไรคือ“ git remote add …” และ“ git push origin origin”?
บ่อยครั้งที่ Git และ Rails ดูเหมือนเวทมนตร์ ... เช่นในบทแรกของหนังสือ Tutorials 3 ของ Railsมันพูดถึง Git: git remote add origin git@github.com:peter/first_app.git git push origin master และมันก็บอกว่า "ใช้งานได้ดี" โดยไม่ได้พูดอะไรมากและเริ่มพูดคุยเกี่ยวกับการแตกแขนง ค้นหาสุทธิแสดงว่าgit remote addจะเพิ่ม "ชื่อย่อ" เช่นoriginและมันอาจเป็นชื่อใด ๆ เช่นกันซึ่งเป็นเหมือนนามแฝงของ URL และoriginเป็นเส้นทางปกติของที่ repo ระยะไกลชี้ไปที่ (ในhttp://git-scm.com/book/en/Git-Basics-Working-with-Remotesภายใต้ "การเพิ่มที่เก็บระยะไกล") เหตุใด URL จึงไม่ใช่ git://git@github.com/peter/first_app.gitแต่อยู่ในรูปแบบอื่น - เป็นรูปแบบอะไร ทำไมมันจะต้องจบลงด้วย.git? ฉันพยายามไม่ใช้.gitตอนท้ายและก็ใช้งานได้เช่นกัน หากไม่.gitสามารถมีอะไรอีกบ้าง gitในgit@github.comน่าจะเป็นบัญชีผู้ใช้บนเซิร์ฟเวอร์คอมไพล์หรือไม่ นอกจากนี้ทำไมจึงต้องใช้ verbose มากgit …
288 git  github 

10
วิธีค้นหา Git และ Mercurial ทั้งหมดที่คอมมิตในที่เก็บเพื่อหาสตริงที่แน่นอน?
ฉันมีที่เก็บ Git ซึ่งมีสาขาไม่กี่แห่งและห้อยต่องแต่ง ฉันต้องการค้นหาข้อผูกพันดังกล่าวทั้งหมดในที่เก็บสำหรับสตริงเฉพาะ ฉันรู้วิธีรับบันทึกการกระทำทั้งหมดในประวัติศาสตร์ แต่สิ่งเหล่านี้ไม่รวมถึงกิ่งไม้หรือ blob dangling เพียงประวัติของ HEAD ฉันต้องการให้พวกเขาทั้งหมดเพื่อค้นหาความมุ่งมั่นที่ผิดพลาด ฉันต้องการทราบวิธีการทำเช่นนี้ใน Mercurial เนื่องจากฉันกำลังพิจารณาสวิตช์
287 git  mercurial 

10
ลบการกระทำที่เฉพาะเจาะจง
ฉันทำงานกับเพื่อนในโครงการและเขาแก้ไขไฟล์จำนวนมากที่ไม่ควรได้รับการแก้ไข ยังไงก็เถอะฉันรวมงานของเขาเข้ากับฉันไม่ว่าตอนที่ฉันดึงมันหรือเมื่อฉันพยายามเลือกไฟล์เฉพาะที่ฉันต้องการ ฉันค้นหาและเล่นมาเป็นเวลานานพยายามหาวิธีลบการกระทำที่มีการแก้ไขไฟล์เหล่านั้นดูเหมือนว่าเป็นการโยนระหว่างการย้อนกลับและการรีบูตและไม่มีตัวอย่างที่ตรงไปตรงมาและ เอกสารถือว่าฉันรู้มากกว่าที่ฉันทำ ดังนั้นนี่เป็นคำถามที่ง่ายขึ้น: จากสถานการณ์สมมติต่อไปนี้ฉันจะลบการคอมมิท 2 ได้อย่างไร $ mkdir git_revert_test && cd git_revert_test $ git init Initialized empty Git repository in /Users/josh/deleteme/git_revert_test/.git/ $ echo "line 1" > myfile $ git add -A $ git commit -m "commit 1" [master (root-commit) 8230fa3] commit 1 1 files changed, 1 insertions(+), 0 …

6
จุดประสงค์ของ git-mv คืออะไร?
จากสิ่งที่ฉันเข้าใจ Git ไม่จำเป็นต้องติดตามการเปลี่ยนชื่อไฟล์ / ย้าย / คัดลอกไฟล์ดังนั้นจุดประสงค์ที่แท้จริงของgit mvคืออะไร หน้าคนไม่บรรยายเป็นพิเศษ ... มันล้าสมัยหรือไม่ มันเป็นคำสั่งภายในที่ไม่ได้มีไว้สำหรับผู้ใช้ทั่วไปหรือไม่?
287 git 

15
Git ผสานรายงาน“ ทันสมัยแล้ว” ถึงแม้ว่าจะมีความแตกต่าง
ฉันมีที่เก็บคอมไพล์ด้วย 2 สาขา: มาสเตอร์และทดสอบ มีความแตกต่างระหว่างต้นแบบและสาขาทดสอบ ทั้งสองสาขามีการเปลี่ยนแปลงทั้งหมดที่ทำไว้ ถ้าฉันทำ: git หลักการชำระเงิน การทดสอบ diff git หน้าจอเต็มไปด้วยการเปลี่ยนแปลงปรากฏขึ้นแสดงความแตกต่าง ฉันต้องการที่จะรวมการเปลี่ยนแปลงในสาขาการทดสอบและทำ: การทดสอบแบบคอมไพล์ แต่ได้รับข้อความ "ทันสมัยแล้ว" อย่างไรก็ตามการตรวจสอบไฟล์ภายใต้แต่ละสาขาจะแสดงความแตกต่างอย่างชัดเจน มีปัญหาอะไรที่นี่และฉันจะแก้ไขได้อย่างไร
286 git  merge 

8
TortoiseGit บันทึกการตรวจสอบผู้ใช้ / ข้อมูลรับรอง
มีวิธีการบันทึกGITHUB's user credentialsด้วย TortoiseGit หรือไม่? มันแจ้งให้ฉันโต้ตอบด้านล่างทุกครั้งที่ฉันจะผลัก / ดึง ฉันต้องการบันทึกข้อมูลรับรองผู้ใช้ของฉันที่ไหนสักแห่งเหมือนที่ฉันทำกับ TortoiseSVN
286 git  github  tortoisegit 

3
ค้นหาการกระทำบน GitHub เนื่องจากแฮชการกระทำ
ฉันค่อนข้างใหม่สำหรับ Github และได้พบกับปัญหาสมัครเล่น ฉันถูกขอให้ทำการตรวจสอบรหัสและได้รับแฮชคอมมิชชันอย่างไรก็ตามฉันได้ลองค้นหาใน Git หากฉันสามารถค้นหาโดยใช้แฮชการคอมมิชชัน แต่ไม่พบสิ่งใดเลย มีวิธีฉันสามารถค้นหารหัสการเปลี่ยนแปลงเพียงแค่ใช้แฮชการกระทำ?
286 git  github 

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

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