Git स्टेटस बनाने के लिए केवल स्टेज्ड फाइल कैसे दिखायें


86

मैं केवल मंचन फ़ाइल नाम की एक सूची प्राप्त करना चाहूंगा। मुझे कमांड के --name-onlyलिए समान झंडा नहीं मिल रहा है git status। एक अच्छा विकल्प क्या है?

फ़ाइल सूची php -l(PHP लिंट सिंटैक्स चेकर) तक पहुंच जाएगी।

समाधान: पूर्ण आदेश

git diff --name-only --cached | xargs -l php -l

3
यदि आप मैन्युअल रूप से उस कमांड को चला रहे हैं, तो ऐसा लगता है कि आप इसे प्री-कमिट हुक में रखना चाहते हैं। kernel.org/pub/software/scm/git/docs/githooks.html
MatrixFrog

जवाबों:



12

स्वीकृत उत्तर आपको यह नहीं बताएगा कि किस प्रकार के परिवर्तन थे।

हाँ, यदि आप वाक्यविन्यास परीक्षक नहीं हैं, लेकिन एक सामान्य व्यक्ति जिसके पास अस्थिर फ़ाइलों से भरा भंडार है, और आप अभी भी जानना चाहते हैं कि मंचित फाइलों का क्या होगा - एक और आदेश है:

git status --short | grep '^[MARCD]'

जो कुछ इस तरह की ओर जाता है:

M  dir/modified_file
A  dir/new_file
R  dir/renamed -> dir/renamed_to
C  dir/copied_file
D  dir/deleted_file

जाहिर है, इस फ़ाइलों का मंचन किया गया था, और उसके बाद git commit:
deleted_fileहटा दिया
new_fileजाएगा, जोड़ा
renamed_fileजाएगा , बन जाएगा renamed_to

यहाँ लघु-प्रारूप आउटपुट का विवरण दिया गया है: https://git-scm.com/docs/git-status#_short_format


1. मेरे संस्करण (2.25.0.windows.1) में "M" और "D" से पहले एक स्थान है । 2. एक और राज्य भी है - "??" जो मुझे समझ नहीं आ रहा है कि मैं कैसे व्याख्या करूं।
इसके

@itsho स्पेस बताता है कि इसका मंचन नहीं हुआ है। यह उत्तर सही है क्योंकि यह पंक्ति में पहले वर्ण पर मेल खाता है। यदि पहले चार सेट है तो यह एक मंचन फ़ाइल है। यदि यह एक स्थान है तो इसे अनदेखा कर दिया जाता है।
Avner

1
यह प्रतिभा है! - इसी तरह की चीज के लिए एक झंडे का झंडा होना चाहिए
नोरफेल्ट

3

@ Coffman21 के जवाब से प्रेरित होकर मैंने अपने में निम्न उपनाम स्थापित किया है.zshrc

alias gst="git status"
alias gst-staged="git status --short | grep '^\w'"
alias gst-unstaged="git status  --short | grep '^\W'"
alias gst-unstaged-tracked="git status  --short | grep '^\s'"
alias gst-untracked="git status --short | grep '^??'"

यह किसी और के लिए भी हो सकता है। इसलिए इसे उत्तरों के ढेर में जोड़ दिया।


लगातार रंग के लिए आप एक जोड़ सकते हैं .: दोनों 2 प्रारंभिक वर्ण रंग करने के लिए, जैसे ग्रेप में, grep '^\w.', grep '^\W.',grep '^\s.'
geekley

0

कोड परिवर्तन के साथ मंचित फ़ाइलों को देखने के लिए

git diff --staged   

या का उपयोग कर - कैश्ड जो के लिए पर्यायवाची है - मंचित

git diff --cached

या कोड परिवर्तन के बिना केवल फ़ाइल नाम देखने के लिए

git diff --staged --name-only  

गिट-अलग मैनुअल

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.