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

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

3
Git แตกต่างระหว่างสาขาปัจจุบันและหลัก แต่ไม่รวมถึงการไม่ผูกมัดปริญญาโท
ฉันต้องการความแตกต่างของการเปลี่ยนแปลงทั้งหมดในสาขาที่ยังไม่ได้รวมเข้ากับปริญญาโท ฉันเหนื่อย: git diff master git diff branch..master git diff branch...master อย่างไรก็ตามในแต่ละกรณีเหล่านี้ diff มีเนื้อหาในต้นแบบที่ยังไม่ได้รวมเข้ากับสาขาของฉัน มีวิธีการแตกต่างระหว่างสาขาของฉันและเจ้านายที่แยกการเปลี่ยนแปลงในต้นแบบที่ยังไม่ได้ถูกรวมเข้าไปในสาขาของฉันหรือยัง

7
เหตุใดจึงใช้ 'git rm' เพื่อลบไฟล์แทน 'rm'
บน SVN การลบบางสิ่งออกจากระบบไฟล์โดยตรง (แทนที่จะใช้ svn) สร้างอาการปวดหัว ฉันไม่ได้พบสิ่งนี้เป็นปัญหาเมื่อใช้gitแต่ฉันสังเกตเห็นว่าคอมไพล์มีrmการใช้งานของตัวเอง( git rm) ความแตกต่างระหว่างrmและgit rmคืออะไร?
171 git 

6
เปลี่ยนชื่อแอพ heroku จากเว็บไซต์ตอนนี้ไม่พบ
หลังจากเปลี่ยนชื่อแอป Heroku ของฉันจากเว็บไซต์ Heroku เมื่อใดก็ตามที่ฉัน cd ไปยังไดเรกทอรีในขั้วและเรียกใช้คำสั่ง Heroku ใด ๆ App not foundที่ฉันได้รับ ไม่มีใครรู้วิธีที่จะแก้ไขปัญหานี้หรือไม่?
170 git  heroku 

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

15
git-upload-pack: ไม่พบคำสั่งเมื่อทำการโคลน Git repo ระยะไกล
ฉันใช้คอมไพล์เพื่อเก็บสำเนาสองชุดของโครงการของฉันในการซิงค์หนึ่งคือกล่องภายในเครื่องของฉันและอื่น ๆ เซิร์ฟเวอร์ทดสอบ นี่เป็นปัญหาที่เกิดขึ้นเมื่อฉันเข้าสู่เซิร์ฟเวอร์การพัฒนาระยะไกลของเราโดยใช้ ssh; git clone me@me.mydevbox.com:/home/chris/myproject Initialized empty Git repository in /tmp/myproject/.git/ Password: bash: git-upload-pack: command not found fatal: The remote end hung up unexpectedly fetch-pack from 'me@me.mydevbox.com:/home/chris/myproject' failed. (ชื่อไฟล์มีการเปลี่ยนแปลงเพื่อป้องกันความผิด ... !) กล่องทั้งสองเรียกใช้ Solaris 10 AMD ฉันขุดเสร็จแล้วถ้าฉันเพิ่ม--upload-pack=$(which git-upload-pack)คำสั่งทำงาน (และพิสูจน์ได้ว่า$PATHมีเส้นทางไปที่ 'git-upload-pack' ตามวิธี RTFM) แต่นี่มันน่ารำคาญจริงๆบวก 'git push' ไม่ทำงาน เพราะฉันไม่คิดว่าจะมี--unpack=ตัวเลือก อนึ่งทุกคอมไพล์คำสั่งปรับการทำงานจากช่องท้องถิ่นของฉันมันเป็นรุ่นเดียวกันของซอฟแวร์ …
170 git  version-control  unix  ssh 

5
Git: วิธีการแตกต่างกันสองไฟล์ที่แตกต่างกันในสาขาที่แตกต่างกันอย่างไร
ฉันมีสองไฟล์ที่แตกต่างกันในสาขาที่แตกต่างกัน ฉันจะกระจายพวกมันในคำสั่งเดียวได้อย่างไร สิ่งที่ต้องการ # git diff branch1/foo.txt branch2/foo-another.txt ฉันสามารถตรวจสอบไฟล์อื่นแตกต่างและเรียกคืน แต่นั่นเป็นวิธีที่ค่อนข้างสกปรก
170 git  git-diff 

7
ฉันจะสร้าง repo GitHub ใหม่จากสาขาใน repo ที่มีอยู่ได้อย่างไร
ฉันมีสาขาหลักและสาขาโครงการใหม่ และตอนนี้ฉันอยากจะสร้าง repo ใหม่ด้วยต้นแบบของมันตามสาขาโครงการใหม่ แบ็คกราวน์: ฉันมีที่เก็บเดียวซึ่งมีสามแอปพลิเคชันอิสระ มันไม่ได้เริ่มต้นด้วยวิธีนี้ เดิมมีเพียงหนึ่งแอพใน repo อย่างไรก็ตามเมื่อเวลาผ่านไปความต้องการทางธุรกิจมีการเปลี่ยนแปลง แอปหนึ่งกลายเป็นสองแอพ (เวอร์ชันเก่าและเขียนใหม่) มีการเพิ่มบริการเว็บ มีการใช้สาขาแยกกันเพื่อบรรจุสามโครงการ อย่างไรก็ตามพวกเขาไม่เปิดเผยรหัสใด ๆ และง่ายกว่าที่จะแบ่งพวกเขาออกเป็น repos ของพวกเขาเอง
170 git  github  branch 

13
ฉันจะปิดใช้งาน Git Credential Manager สำหรับ Windows ได้อย่างไร
ฉันสังเกตเห็นว่าใน Git เวอร์ชันล่าสุดตอนนี้ค่าเริ่มต้นคือการเปิดกล่องโต้ตอบ "Git Credential Manager สำหรับ Windows" แทนการแจ้งรหัสผ่านให้ฉันที่ Bash prompt ทุกครั้ง ฉันเกลียดพฤติกรรมนี้มาก ฉันจะปิดการใช้งานและกลับไปที่การป้อนรหัสผ่านที่ Bash shell ทุกครั้งได้อย่างไร อย่างไรก็ตามฉันไม่ต้องการให้ Git ทำการแคชข้อมูลรับรองของฉันไม่ว่าด้วยวิธีใดก็ตามไม่ว่าจะผ่านข้อมูลประจำตัวของ Windows หรือภูตภายในบางตัว ฉันต้องการที่จะปิดการใช้งานการแคชข้อมูลประจำตัวทั้งหมด
170 git  bash 

5
ใช้ Git ฉันจะค้นหาสตริงในทุกสาขาได้อย่างไร
เมื่อใช้ Git ฉันจะค้นหาไฟล์ทั้งหมดในสาขาท้องถิ่นเพื่อหาสตริงที่กำหนดได้อย่างไร เฉพาะ GitHub: เป็นไปได้ไหมที่จะทำการค้นหาข้างต้นในทุกสาขาของ GitHub? (มีสาขาระยะไกลหลายแห่งในพื้นที่เก็บข้อมูล GitHub ระยะไกลของฉันที่นึกคิดฉันไม่ต้องนำมาลงสำหรับการค้นหานี้ ... )
170 git  search  github  branch 

7
Git, เขียนชื่อผู้ใช้และอีเมลก่อนหน้า
ฉันได้ทำคอมมิชชันให้กับโปรเจ็กต์ใน Github แต่ฉันรู้ว่าฉันไม่ได้ตั้งค่าอีเมลที่ถูกต้องและชื่อเต็มของคอมมิทเตอร์บนคอมพิวเตอร์ที่ฉันใช้งานอยู่ในขณะนี้เพื่อสร้างคอมมิทของฉัน ไม่ได้อยู่ที่นั่น ฉันจะเขียนอีเมลและชื่อผู้ใช้ที่ผ่านมาทั้งหมดได้อย่างไร
170 git 

3
บังคับให้ LF eol ใน repo คอมไพล์และสำเนาการทำงาน
ฉันมีที่เก็บ git บน github ไฟล์จำนวนมากได้รับการพัฒนาในตอนแรกบน Windows และฉันก็ไม่ระมัดระวังเกี่ยวกับการสิ้นสุดบรรทัด เมื่อฉันทำการคอมมิชชันเริ่มต้นฉันยังไม่มีการกำหนดค่า git ใด ๆ เพื่อบังคับใช้การสิ้นสุดบรรทัดที่ถูกต้อง ผลที่สุดคือฉันมีไฟล์จำนวนมากที่มีปลายสาย CRLF ในที่เก็บ github ของฉัน ตอนนี้ฉันกำลังพัฒนาบางส่วนบน Linux และฉันต้องการล้างข้อมูลท้ายบรรทัด ฉันจะมั่นใจได้อย่างไรว่าไฟล์จะถูกจัดเก็บอย่างถูกต้องด้วย LF บน github และมี LF ในสำเนาการทำงานของฉัน ฉันได้ตั้งค่า.gitattributesไฟล์ที่มีtext eol=LF; ถูกต้องหรือไม่ ด้วยความมุ่งมั่นและผลักดันที่ฉันสามารถเพียงrmrepo ท้องถิ่นของฉันและโคลนอีกครั้งจาก GitHub เพื่อให้ได้ผลที่ต้องการ?
170 git  github  eol 

5
ไม่สามารถเชื่อมต่อกับ GitHub.com สำหรับการโคลน
ฉันพยายามโคลนที่เก็บ git เชิงมุม - phonecatแต่ฉันได้รับข้อความต่อไปนี้เมื่อฉันป้อนคำสั่งใน Git Bash ของฉัน: $ git clone git://github.com/angular/angular-phonecat.git Cloning into 'angular-phonecat'... fatal: unable to connect to github.com: github.com[0: 204.232.175.90]: errno=No error

17
การยกเลิกการเชื่อมโยงไฟล์ล้มเหลว
ฉันพยายามดึง git และฉันได้รับข้อผิดพลาดต่อไปนี้: การยกเลิกการเชื่อมโยงไฟล์ 'lib / xxx.jar' ล้มเหลว ฉันควรลองใหม่อีกครั้ง (y / n) ไม่ว่าฉันจะเลือก y หรือ n เป็นไปไม่ได้ที่จะเข้าสู่สถานะที่ฉันสามารถดึงหรือดันได้
169 windows  git 

6
Github: นำเข้าสาขาต้นน้ำเข้าสู่ทางแยก
ฉันมีทางแยก ( origin) จากโครงการ ( upstream) บน github ตอนนี้โครงการอัพสตรีมได้เพิ่มสาขาใหม่ฉันต้องการที่จะนำเข้าสู่ทางแยกของฉัน ฉันจะทำอย่างไร ฉันลองตรวจสอบจากระยะไกลและสร้างสาขาด้านบนของที่ แต่กำหนดค่าสาขาวิธีที่git pushพยายามที่จะผลักดันไปที่upstream: git checkout upstream/branch git checkout -b branch แก้ไข บางทีนั่นอาจจะไม่ชัดเจน แต่ผมต้องการที่จะเพิ่มสาขาไปยังพื้นที่เก็บข้อมูลในท้องถิ่นของฉันดังนั้นฉันสามารถผลักดันให้origin(ส้อมของฉัน) git pushผ่านทาง เนื่องจากที่เก็บข้อมูลต้นน้ำมักเป็นแบบอ่านอย่างเดียวและคุณแยกไว้เพื่อสนับสนุน ดังนั้นผมโดยทั่วไปต้องการที่จะชำระเงินเป็นสาขาที่ไม่มีอยู่ในที่มีเนื้อหาจะถูกดึงมาจากoriginupstream
169 git  github 

7
ฉันไม่สามารถเข้าใจพฤติกรรมของคอมไพล์ rebase --onto
ฉันสังเกตว่าทั้งสองช่วงของคำสั่ง git ต่อไปนี้มีพฤติกรรมที่แตกต่างกันและฉันไม่เข้าใจว่าทำไม ฉันมีAและBสาขาที่ลงตัวกับหนึ่งcommit ---COMMIT--- (A) \ --- (B) ฉันต้องการที่จะลดBสาขาในล่าสุดA(และมีความมุ่งมั่นในBสาขา) ---COMMIT--- (A) \ --- (B) ไม่มีปัญหาถ้าผมทำ: checkout B rebase A แต่ถ้าฉันทำ: checkout B rebase --onto B A มันไม่ทำงานเลยไม่มีอะไรเกิดขึ้น ฉันไม่เข้าใจว่าทำไมทั้งสองพฤติกรรมจึงแตกต่างกัน Phpstorm git client ใช้ไวยากรณ์ตัวที่สองและดูเหมือนว่าฉันจะพังอย่างสมบูรณ์นั่นเป็นเหตุผลที่ฉันขอให้ปัญหาไวยากรณ์นี้
169 git  git-rebase 

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