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

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

3
git ลบรีโมท: ไม่มีการอ้างอิงระยะไกล
ในระยะสั้น; ฉันจะลบรีโมตที่ผสานระยะไกลหลายตัวได้อย่างไร พื้นหลังเพิ่มเติม; ฉันมี git repo ที่มีรีโมตหลายสิบตัวที่รวมเข้ากับมาสเตอร์แล้ว ฉันสามารถลบรีโมทเหล่านี้ทีละรายการโดยใช้: git push --delete origin myBranch-1234 อย่างไรก็ตามนี่เป็นกระบวนการที่ช้าและน่าเบื่อสำหรับรีโมททั้งหมด ฉันลองใช้คำสั่งนี้: git branch -r --merged | grep origin | grep -v master | xargs git push origin --delete git branch -r --mergedแสดงรายการรีโมทที่ผสานทั้งหมด grep originบอกคำสั่งให้รวมจุดเริ่มต้น grep -v masterบอกคำสั่งให้ยกเว้นต้นแบบ xargs git push origin --deleteบอกคำสั่งให้ลบรายการรีโมท เมื่อรวมกันแล้วฉันคาดหวังว่าสิ่งนี้จะรวบรวมรีโมทที่ผสานทั้งหมดและลบออก เมื่อฉันเรียกใช้คำสั่งข้างต้นฉันจะได้รับสิ่งต่อไปนี้สำหรับทุกรีโมตที่ผสาน error: unable …
107 git  git-remote 

1
git rebase --skip ทำอะไรกันแน่?
ฉันเพิ่งทำgit pull --rebase origin masterและมีความขัดแย้ง ประการแรกความขัดแย้งนี้อยู่ในไฟล์ที่ฉันไม่ได้สัมผัสและมีการตอบกลับประมาณ 10 ครั้ง ทำไมสิ่งนี้ถึงเกิดขึ้น? จากนั้นฉันก็พิมพ์โดยไม่ได้ตั้งใจgit rebase --skipและมัน 'ข้ามแพตช์นั้น' กังวลว่าฉันข้ามการคอมมิตไปแล้วฉันตรวจสอบเวอร์ชันใหม่ของสาขาหลักและพบความแตกต่างระหว่างสาขาที่ฉันทำฐานใหม่และสาขาหลักใหม่ การเปลี่ยนแปลงเดียวที่ปรากฏในความแตกต่างคือคอมมิตล่าสุดและเมื่อดูที่บันทึกแพตช์ที่ถูก "ข้าม" จะปรากฏในประวัติการคอมมิต ใครช่วยอธิบายได้ไหมว่าเกิดอะไรขึ้นที่นี่?
107 git 

3
ฉันจะเปิดเวทีโต้ตอบก้อนใหญ่ในคอมไพล์ได้อย่างไร?
ในคอมไพล์ถ้าฉันมี hunks สองสามตัวจากไฟล์เดียวกันที่จัดฉากในดัชนีของฉันฉันจะยกเลิกการแสดงหนึ่งในนั้นได้อย่างไร? มีทางเลือกอื่นในการยกเลิกการจัดเตรียมไฟล์ทั้งหมดจากนั้นจัดเตรียม hunks ที่ฉันต้องการเก็บไว้อีกครั้งหรือยกเลิกการเปลี่ยนแปลงในสำเนาที่ใช้งานได้ด้วยตนเองจากนั้นเพิ่มการเปลี่ยนแปลงที่เลิกทำแบบโต้ตอบ
107 git  staging 

6
ละเว้นไฟล์. pyc ในที่เก็บ git
ฉันจะละเว้น.pycไฟล์ใน git ได้อย่างไร ถ้าใส่.gitignoreแล้วไม่ได้ผล ฉันต้องการให้พวกเขาไม่ถูกติดตามและไม่ถูกตรวจสอบการกระทำ
107 python  git 

14
ฝังคอมมิตแฮชใน. net dll
ฉันกำลังสร้างแอปพลิเคชัน C # โดยใช้ Git เป็นตัวควบคุมเวอร์ชัน มีวิธีฝังแฮชคอมมิตสุดท้ายโดยอัตโนมัติในไฟล์ปฏิบัติการเมื่อฉันสร้างแอปพลิเคชันหรือไม่ ตัวอย่างเช่นการพิมพ์คอมมิตแฮชไปยังคอนโซลจะมีลักษณะดังนี้: class PrintCommitHash { private String lastCommitHash = ?? // What do I put here? static void Main(string[] args) { // Display the version number: System.Console.WriteLine(lastCommitHash ); } } โปรดทราบว่าสิ่งนี้ต้องทำในเวลาสร้างไม่ใช่รันไทม์เนื่องจากไฟล์ปฏิบัติการที่ปรับใช้ของฉันจะไม่มี git repo ที่เข้าถึงได้ คำถามที่เกี่ยวข้องสำหรับ C ++ สามารถพบได้ที่นี่ แก้ไข คำขอของ Per @ mattanja ฉันกำลังโพสต์สคริปต์ …
107 c#  git 


6
จะใช้ Git patch กับไฟล์ที่มีชื่อและเส้นทางอื่นได้อย่างไร?
ฉันมีที่เก็บสองแห่ง ./hello.testในหนึ่งฉันจะทำให้การเปลี่ยนแปลงไปยังแฟ้ม git format-patch -1 HEADฉันกระทำการเปลี่ยนแปลงและสร้างแพทช์จากที่กระทำกับ ตอนนี้ฉันมีที่เก็บที่สองที่มีไฟล์ที่มีเนื้อหาเหมือนกับ hello.test แต่ถูกวางไว้ในไดเร็กทอรีอื่นภายใต้ชื่ออื่น: ./blue/red/hi.test. ฉันจะนำโปรแกรมแก้ไขดังกล่าวไปใช้กับhi.testไฟล์ได้อย่างไร ฉันพยายามgit am --directory='blue/red' < patch_fileแต่แน่นอนว่าบ่นว่าไฟล์ไม่ได้ตั้งชื่อเหมือนกัน (ซึ่งฉันคิดว่า Git ไม่สนใจ?) ฉันรู้ว่าฉันสามารถแก้ไขความแตกต่างเพื่อใช้กับไฟล์เฉพาะนั้นได้ แต่ฉันกำลังมองหาวิธีแก้ปัญหาคำสั่ง

1
ทำไมคอมไพล์ถึงบอกฉันว่า "บรรจุที่เก็บโดยอัตโนมัติในพื้นหลังเพื่อประสิทธิภาพสูงสุด"
หมายเหตุ : ฉันไม่คิดว่านี่เป็นคำถามที่ซ้ำกันซึ่งกำลังพูดถึงแพ็คที่ไม่ใช่พื้นหลังซึ่งแฮงค์คอมไพล์ด้วยข้อความแสดงข้อผิดพลาดที่แตกต่างกันเล็กน้อย ในที่เก็บ git ของฉันทุกครั้งที่ฉันเรียกใช้ (เช่น) git fetchgit จะพิมพ์: Auto packing the repository in background for optimum performance. See "git help gc" for manual housekeeping. ดูเหมือนว่าจะพิมพ์สิ่งนี้ทุกครั้งถ้าฉันทำgit fetchซ้ำ ๆ แม้ว่าจะไม่มีการเปลี่ยนแปลงและไม่มีอะไรgit fetchให้ทำ สิ่งนี้ไม่สมเหตุสมผลกับฉันสักเท่าไหร่ นอกจากนี้ยังดูเหมือนว่าจะเกิดขึ้นกับการดำเนินงานของเครือข่ายอื่น ๆ เช่นและgit pushgit pull คำสั่งจะกลับไปที่พรอมต์ทันทีโดยไม่มีเอาต์พุตเพิ่มเติมและฉันไม่พบกระบวนการคอมไพล์ใด ๆ ที่ทำงานบนเครื่องของฉัน ดูเหมือนว่าจะเกิดขึ้นเฉพาะกับที่เก็บนี้และในเครื่องนี้เท่านั้น git config -l | grep gcไม่ส่งคืนอะไรเลย ฉันจะทำอย่างไรเพื่อวินิจฉัยหรือแก้ไขปัญหานี้ $ git …

5
จะคัดลอกคอมมิตจากที่เก็บ Git หนึ่งไปยังอีกที่หนึ่งได้อย่างไร
เมื่อสัปดาห์ที่แล้วฉันสร้าง Github repo และลืมเลือกใบอนุญาตสำหรับ repo ตอนนี้มีการคอมมิชชันขนาดใหญ่แล้ว 3 รายการ ฉันถามผู้ร่วมให้ข้อมูลทั้ง 3 คนว่าใช้ได้หรือไม่ถ้าฉันลบ repo แล้วสร้างอีกครั้งโดยใช้ชื่อเดียวกันและคราวนี้เลือกใบอนุญาตเมื่อสร้าง repo และพวกเขาก็ทำได้ดี คำถาม มีวิธีใดบ้างที่ฉันนำคอมมิตไปสู่ ​​repo ใหม่ (ครั้งนี้คอมมิตแรกคือไฟล์ LICENSE) และยังคงเก็บข้อมูลเมตาการคอมมิตไว้หรือไม่
107 linux  git  github 

5
สีใน git-log
เมื่อคุณเรียกใช้git log --decorate --pretty=onelineเอาต์พุตจะมีรายการเช่นเดียว(HEAD, refs/published/master, master)กับการระบายสี ฉันมีสิ่งต่อไปนี้ใน gitconfig ของฉันด้วย: [color "branch"] current = yellow reverse local = yellow remote = green คุณทำซ้ำสีเหล่านั้นได้อย่างไรเมื่อทำรูปแบบที่กำหนดเองดังต่อไปนี้ git log --decorate --stat --graph --pretty=format:"%d %Cgreen%h%Creset (%ar - %Cred%an%Creset), %s%n"
106 git  git-log 

4
“ 1 บรรทัดเพิ่มข้อผิดพลาดช่องว่าง” หมายความว่าอย่างไรเมื่อใช้โปรแกรมแก้ไข
ฉันกำลังแก้ไขไฟล์ markdown ของที่เก็บรีโมตที่ถูกโคลนและต้องการทดสอบการสร้างและใช้แพตช์จากสาขาหนึ่งไปยังอีกสาขาหนึ่ง อย่างไรก็ตามทุกครั้งที่ฉันทำการเปลี่ยนแปลงใด ๆ ฉันจะได้รับข้อความต่อไปนี้ระหว่างgit apply: 0001-b.patch:16: trailing whitespace. warning: 1 line adds whitespace errors. (สิ่งนี้เกิดขึ้นบน Mac ของฉันและฉันไม่รู้ว่ารหัสดั้งเดิมถูกสร้างขึ้นที่ไหน) ข้อความเตือนหมายความว่าอย่างไรและฉันต้องดูแลหรือไม่?

4
วิธีการ. gitignore ไฟล์แบบวนซ้ำ
ฉันพยายามหลีกเลี่ยงรูปแบบต่อไปนี้ใน.gitignoreไฟล์ของฉัน MyPrject/WebApp/Scripts/special/*.js MyPrject/WebApp/Scripts/special/*/*.js MyPrject/WebApp/Scripts/special/*/*/*.js MyPrject/WebApp/Scripts/special/*/*/*/*.js MyPrject/WebApp/Scripts/special/*/*/*/*/*.js MyPrject/WebApp/Scripts/special/*/*/*/*/*/*.js MyPrject/WebApp/Scripts/special/*/*/*/*/*/*/*.js พวกเราเหนื่อย: MyPrject/WebApp/Scripts/special/**.js MyPrject/WebApp/Scripts/special/**/*.js อย่างไรก็ตามสิ่งนี้ไม่ได้ผล นี่คือคอมไพล์บน Windows มีวิธีที่กระชับกว่านี้โดยไม่ต้องทำซ้ำ ๆ หรือไม่?
106 git  gitignore 

3
จะดาวน์โหลด. zip จาก GitHub สำหรับคอมมิตเฉพาะได้อย่างไร?
ฉันต้องการดาวน์โหลดไฟล์. zip ด้วยแหล่งที่มาของไลบรารีที่โฮสต์บน github แต่ฉันไม่ต้องการต้นแบบเพราะทุกครั้งที่ดาวน์โหลดฉันสามารถดาวน์โหลดเวอร์ชันอื่นได้ ไลบรารีนี้ไม่มีแท็กดังนั้นฉันจึงไม่สามารถใช้สิ่งนั้นได้ ดังนั้นฉันจะดาวน์โหลด source.zip สำหรับคอมมิตเฉพาะได้อย่างไร
106 git  github 

13
วิธีการวนซ้ำผ่านสาขา git ทั้งหมดโดยใช้ bash script
ฉันจะวนซ้ำผ่านสาขาท้องถิ่นทั้งหมดในที่เก็บของฉันโดยใช้สคริปต์ทุบตีได้อย่างไร ฉันต้องทำซ้ำและตรวจสอบว่ามีความแตกต่างระหว่างสาขาและสาขาที่อยู่ห่างไกลหรือไม่ เช่น for branch in $(git branch); do git log --oneline $branch ^remotes/origin/master; done ฉันต้องทำบางอย่างตามที่ระบุไว้ข้างต้น แต่ปัญหาที่ฉันเผชิญคือ $ (git branch) ทำให้ฉันมีโฟลเดอร์ภายในโฟลเดอร์ที่เก็บพร้อมกับสาขาที่มีอยู่ในที่เก็บ นี่เป็นวิธีที่ถูกต้องในการแก้ปัญหานี้หรือไม่ หรือมีวิธีอื่นทำได้หรือไม่ ขอบคุณ
106 git  bash  git-bash 

3
การดูไฟล์ที่ถูกลบใน Git
ฉันได้ลบไฟล์ด้วย Git และทำการคอมมิตแล้วดังนั้นไฟล์จึงไม่อยู่ในสำเนาที่ใช้งานได้อีกต่อไป ฉันต้องการดูเนื้อหาของไฟล์นั้น แต่ไม่สามารถกู้คืนได้จริง ฉันจะทำเช่นนี้ได้อย่างไร?
106 git 

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