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

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

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 ดึงที่เก็บเสมอและแน่นอนว่าล้มเหลวเนื่องจากข้อผิดพลาดด้านบน ..


6
วิธีการย่อขนาดโฟลเดอร์. git
ฐานปัจจุบันของฉันมีขนาดโดยรวมประมาณ 200MB แต่โฟลเดอร์. git ของฉันมีขนาด 5GB (!) เนื่องจากฉันส่งงานของฉันไปยังเซิร์ฟเวอร์ภายนอกฉันจึงไม่ต้องการประวัติท้องถิ่นที่ยิ่งใหญ่ ฉันจะย่อขนาดโฟลเดอร์. git เพื่อเพิ่มพื้นที่ว่างบนโน้ตบุ๊กได้อย่างไร ฉันสามารถลบการเปลี่ยนแปลงทั้งหมดที่เก่ากว่า 30 วันได้หรือไม่ ขอบคุณมากสำหรับความช่วยเหลือ :)
134 git 

3
ฉันจะยกเลิกการชำระเงินในคอมไพล์ได้อย่างไร
ฉันเพิ่งตรวจสอบการกระทำก่อนหน้านี้จาก git repo ในพื้นที่ของฉัน ฉันไม่ได้ทำการเปลี่ยนแปลงใด ๆ ฉันแค่ดูมัน ตอนนี้ฉันต้องการกลับไปที่คอมมิตล่าสุด - ฉันจะทำอย่างไร คำสั่งที่แน่นอนที่ฉันใช้เพื่อตรวจสอบ: git checkout e5dff6b3c5d704f9b598de46551355d18235ac08 ตอนนี้เมื่อฉันพิมพ์ git log ที่ด้านบนฉันเห็นสิ่งนี้เช็คเอาต์คอมมิต แต่ไม่มีการคอมมิตในภายหลัง ฉันลบสิ่งเหล่านั้นโดยไม่ได้ตั้งใจหรือไม่?
134 git 

11
Git stash:“ ไม่สามารถใช้กับแผนผังการทำงานที่สกปรกได้โปรดจัดขั้นตอนการเปลี่ยนแปลงของคุณ”
ฉันพยายามใช้การเปลี่ยนแปลงที่เก็บไว้ก่อนหน้านี้git stash popและได้รับข้อความ: Cannot apply to a dirty working tree, please stage your changes มีข้อเสนอแนะเกี่ยวกับวิธีจัดการกับสิ่งนั้นหรือไม่?
133 git  git-stash 

17
git update-index - สมมติว่าไม่มีการเปลี่ยนแปลงผลตอบแทน "fatal can't mark file"
ฉันมีปัญหาเดียวกันกับ OP ในโพสต์นี้แต่ฉันไม่เข้าใจคำตอบที่ทำเครื่องหมายว่าถูกต้อง (ฉันไม่เห็นว่ามันอธิบายวิธีแก้ไขสถานการณ์) ฉันทำสิ่งนี้และได้รับข้อผิดพลาดนี้: $ git update-index --assume-unchanged web.config fatal: Unable to mark file web.config ไฟล์ IS ถูกเพิ่มในที่เก็บ มันไม่ได้อยู่ใน .git/info/exclude ไม่ได้อยู่ใน.gitignore(เป็น แต่ฉันเอาออกแล้วบังคับให้เพิ่ม web.config โดยใช้git add -f web.configมุ่งมั่นและผลักดันการเปลี่ยนแปลงเหล่านั้นไปยัง repo) เมื่อฉันทำ Git ls-files - มันไม่อยู่ที่นั่น ฉันจะแก้ไขอะไรได้บ้าง
133 git 

3
ยกเลิก Git Stash Pop
ฉันทำ git stash pop และตอนนี้ฉันมีความขัดแย้งมากมาย ฉันได้ใส่รหัสล่าสุดทั้งหมดของฉันก่อนหน้าgit stash popดังนั้นจะมีวิธีกลับไปที่การกระทำสุดท้ายและกำจัดข้อขัดแย้งทั้งหมดและรหัสที่git stash popฉีดเข้าไปหรือไม่
133 git 

2
GitHub - แสดงรายการโดยผู้เขียน
มีวิธีใดบ้างในGitHubในการแสดงรายการคอมมิตทั้งหมดที่ทำโดยผู้เขียนคนเดียวในเบราว์เซอร์ (ไม่ว่าจะในเครื่องเช่นผ่านgit logหรือผ่าน API) การคลิกชื่อผู้ใช้ในรายการคอมมิต (Commit History) จะนำไปสู่หน้าโปรไฟล์ของผู้ใช้คนนั้น การตรวจสอบ UI ของ GitHub และการค้นหา (Google, StackOverflow) ไม่ได้เปิดเผยวิธีการดำเนินการนี้
133 git  github 

8
คุณทำให้ Git ละเว้นไฟล์โดยไม่ใช้. gitignore ได้อย่างไร
เนื่องจากข้อ จำกัด แปลก ๆ ภายนอกฉันไม่สามารถแก้ไขที่.gitignoreเก็บของฉันได้ มีวิธีละเว้นไฟล์และไดเร็กทอรีอื่นนอกเหนือจากการแก้ไข.gitignoreหรือไม่? แม้ว่าจะเป็นโซลูชันระดับโลกเช่นการกำหนดค่าส่วนกลางที่จะนำไปใช้กับที่เก็บทั้งหมดของฉัน

12
TortoiseGit ไม่แสดงไอคอนซ้อนทับ
ตอนนี้ใช้TortoiseGitมาเกือบปีเต็มแล้ว มันทำงานได้ดีมากสำหรับฉันจนกระทั่งเมื่อวานนี้เมื่อฉันพบปัญหา ฉันกำลังลบโฟลเดอร์เมื่อ Windows Explorer เกิดข้อขัดข้องกับฉัน (มันค้างที่ "การค้นพบรายการ") นานกว่าหนึ่งชั่วโมงจากนั้นฉันจึงเริ่มระบบใหม่ ตั้งแต่นั้นเป็นต้นมา (และฉันไม่แน่ใจว่าเหตุการณ์ที่อธิบายนั้นเกี่ยวข้องกับเรื่องนี้หรือไม่) TortoiseGit จึงหยุดแสดงไอคอนซ้อนทับใน explorer อย่างไรก็ตามพฤติกรรมไม่เหมือนกับคนอื่น ๆ ที่โพสต์คำถามที่นี่เนื่องจาก: ในopen fileบทสนทนาของโปรแกรมทั้งหมดไอคอนยังคงมีอยู่ (!) นี่คือรายการสิ่งที่ฉันพยายาม: ฉันเปลี่ยนการตั้งค่า TortoiseGit เพื่อแสดงไอคอนต่างๆ ติดตั้ง TortoiseGit อีกครั้ง (ถอนการติดตั้งรีสตาร์ทติดตั้งรีสตาร์ท) ฉันลบภาพซ้อนทับไอคอนทั้งหมดที่เริ่มต้นด้วย "Tortoise" ในHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer \ShellIconOverlayIdentifiersจากนั้นถอนการติดตั้ง TortoiseGit รีสตาร์ทคอมพิวเตอร์และติดตั้ง TortoiseGit ใหม่ แก้ไข: ฉันพยายามสร้างผู้ใช้ใหม่บนคอมพิวเตอร์และผู้ใช้ใหม่มีไอคอนซ้อนทับที่ใช้งานได้ดี ตอนนี้ฉันยิ่งสับสน ไม่มีอะไรช่วยจนถึงตอนนี้ ความคิดใด ๆ ?
133 git  tortoisegit 

4
สาขาคอมไพล์“ เก่า” คืออะไร?
สาขาคอมไพล์ "เก่า" เป็นคำที่ฉันได้ยินมามาก ฉันรู้ว่ามันมีส่วนเกี่ยวข้องกับกิ่งไม้ซึ่งถือว่ามีประโยชน์น้อยกว่าหรือไม่มีประโยชน์ แต่ไม่สามารถหาคำจำกัดความที่แน่นอนได้ สาขาคอมไพล์ "เก่า" คืออะไร?
133 git  branch 

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

9
เก็บไฟล์ที่ถูกละเว้นไม่ให้อยู่ในสถานะคอมไพล์
ฉันต้องการหยุด Git ไม่ให้แสดงไฟล์ที่ถูกละเว้นgit statusเนื่องจากมีไฟล์เอกสารและไฟล์กำหนดค่าจำนวนมากในรายการไฟล์ที่เปลี่ยนแปลง แต่ไม่ได้รับการอัปเดตทำให้รายการไม่มีประโยชน์ครึ่งหนึ่ง เป็นเรื่องปกติหรือไม่ที่ Git จะแสดงไฟล์เหล่านี้ ฉันใส่ข้อมูลการละเว้นใน.gitignoreไฟล์ในไดเร็กทอรีรูทของที่เก็บ Git และจะไม่ถูกเพิ่มเมื่อใช้งานgit add .แต่ดูเหมือนว่าจะไม่ถูกละเว้นอย่างเต็มที่เนื่องจากปรากฏในรายการดังกล่าวและไม่ปรากฏในรายการ พิมพ์โดยgit ls-files --others -i --exclude-standard. เฉพาะไฟล์ที่ตรงกับรูปแบบที่~/.gitignoreแสดงอยู่ที่นั่น อาจเป็นเพราะในช่วงก่อนหน้านี้ฉันไม่ได้เพิกเฉยต่อพวกเขาและพวกเขาก็มุ่งมั่นอย่างน้อยหนึ่งครั้ง?
133 git  gitignore 

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

4
สร้างสาขาว่างบน GitHub
ฉันต้องการสร้างสาขา GitHub ใหม่ชื่อrelease. สาขานี้ต้องว่าง ! อย่างไรก็ตามมีสาขาที่มีอยู่แล้วที่มี x commits และฉันไม่ต้องการมีประวัติการกระทำ วิธีเดียวที่ฉันพบคือการสร้างสาขาในท้องถิ่น --orphan
133 git  github 

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