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

9
Git: รายการเฉพาะไฟล์“ untracked” (เช่นเดียวกับคำสั่งที่กำหนดเอง)
มีวิธีใช้คำสั่งที่ต้องการgit ls-filesแสดงเฉพาะไฟล์ที่ไม่ได้ติดตามหรือไม่ เหตุผลที่ฉันถามเพราะฉันใช้คำสั่งต่อไปนี้เพื่อประมวลผลไฟล์ที่ถูกลบทั้งหมด: git ls-files -d | xargs git rm ฉันต้องการสิ่งที่คล้ายกันสำหรับไฟล์ที่ไม่ได้ติดตาม: git some-command --some-options | xargs git add ฉันสามารถค้นหา-oตัวเลือกได้git ls-filesแต่นี่ไม่ใช่สิ่งที่ฉันต้องการเพราะมันยังแสดงไฟล์ที่ถูกละเว้นด้วย ฉันยังสามารถสร้างคำสั่งที่ยาวและน่าเกลียดดังต่อไปนี้: git status --porcelain | grep '^??' | cut -c4- | xargs git add ดูเหมือนว่าจะต้องมีคำสั่งที่ดีกว่าที่ฉันสามารถใช้ได้ที่นี่ และถ้าไม่มีฉันจะสร้างคำสั่ง git ที่กำหนดเองได้อย่างไร

23
สถานะ git แสดงการแก้ไข git checkout - <file> ไม่ได้ลบออก
ฉันต้องการลบการเปลี่ยนแปลงทั้งหมดในสำเนาการทำงานของฉัน การรันgit statusรายการไฟล์ที่ถูกแก้ไข ดูเหมือนว่าฉันจะไม่ลบสิ่งดัดแปลงเหล่านี้ออก เช่น: rbellamy@PROMETHEUS /d/Development/rhino-etl (master) $ git status # On branch master # Changed but not updated: # (use "git add &lt;file&gt;..." to update what will be committed) # (use "git checkout -- &lt;file&gt;..." to discard changes in working directory) # # modified: Rhino.Etl.Core/Enumerables/CachingEnumerable.cs # modified: Rhino.Etl.Core/Pipelines/SingleThreadedPipelineExecuter.cs …

9
จะตรวจสอบได้อย่างไรว่าไม่มีอะไรที่จะต้องทำในสาขาปัจจุบัน
เป้าหมายคือการได้รับสถานะที่ชัดเจนซึ่งสามารถประเมินได้ในคำสั่งเชลล์ ฉันพยายามgit statusแต่จะคืนค่า 0 เสมอแม้ว่าจะมีรายการที่ต้องส่ง git status echo $? #this is always 0 ฉันมีความคิด แต่ฉันคิดว่ามันเป็นความคิดที่ไม่ดี if [ git status | grep -i -c "[a-z]"&gt; 2 ]; then code for change... else code for nothing change... fi มีวิธีอื่นอีกไหม? อัปเดตด้วยวิธีแก้ปัญหาต่อไปนี้ดูโพสต์ของ Mark Longair ฉันลองสิ่งนี้ แต่มันทำให้เกิดปัญหา if [ -z $(git status --porcelain) ]; then …
172 git  git-status 

1
รายการ Git ของไฟล์ที่จัดขั้น
ฉันฉากมากของไฟล์ที่ใช้git addตอนนี้ผมต้องการที่จะเห็นไฟล์ทั้งหมดที่ผมได้จัดฉากโดยไม่ต้องไม่ได้ติดตามแฟ้มหรือเปลี่ยนแปลง แต่ unstagedไฟล์ ฉันจะทำอย่างไร? เมื่อใช้git diff --cachedฉันสามารถเห็นการเปลี่ยนแปลงของสิ่งที่ฉันจัดฉากได้ ดังนั้นแล้วฉันพยายามใช้git status --cachedแต่ที่น่าเสียดายที่ไม่ได้ทำงานบน--cachedgit status

13
“ ร้ายแรง: ไม่ใช่ที่เก็บ git (หรือไดเร็กทอรีหลักใด ๆ )” จากสถานะคอมไพล์
คำสั่งนี้ใช้เพื่อรับไฟล์และคอมไพล์: git clone a-valid-git-url ตัวอย่างเช่น: git clone git://cfdem.git.sourceforge.net/gitroot/cfdem/liggghts อย่างไรก็ตามgit status(หรือคำสั่ง git อื่น ๆ ) จะให้fatal: Not a git repository (or any of the parent directories)ข้อผิดพลาดข้างต้น ผมทำอะไรผิดหรือเปล่า?

1
วิธีการปรับสีเอาต์พุตสถานะ git
ฉันต้องการทำให้เอาต์พุตสถานะ git เป็นสีเพื่อให้: untracked files = magenta new files = green modified files = blue deleted files = red ฉันเห็นไฟล์ที่จัดฉากเป็นสีเขียวและไฟล์ที่ไม่มีการจัดเตรียมเป็นสีน้ำเงิน: .gitconfig ของฉันได้รับการตั้งค่าโดยอ้างอิงจากการค้นหาบางส่วน: [color] status = auto [color "status"] added = green changed = blue untracked = magenta deleted = red

4
วิธีทำให้สถานะ git แสดงเฉพาะไฟล์ที่จัดฉาก
ฉันต้องการรับรายชื่อไฟล์ที่จัดขั้นเท่านั้น ฉันไม่พบแฟล็กที่เทียบเท่า--name-onlyสำหรับgit statusคำสั่ง ทางเลือกที่ดีคืออะไร? รายการไฟล์จะถูกส่งไปที่php -l(ตัวตรวจสอบไวยากรณ์ของ PHP lint) วิธีแก้ไข: คำสั่งที่สมบูรณ์ git diff --name-only --cached | xargs -l php -l
86 git  git-status 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.