添加深層文件夾當Java編程中是很常見的,其文件結構深如在混帳
添加你必須鍵入git add com/company/project/folder/subfolder/SomeAwesomeClass.java
文件
com/company/project/folder/subfolder
所以,當有一個更快的方法?像某種git add-if-matches SomeAwesomeClass.java
添加深層文件夾當Java編程中是很常見的,其文件結構深如在混帳
添加你必須鍵入git add com/company/project/folder/subfolder/SomeAwesomeClass.java
文件
com/company/project/folder/subfolder
所以,當有一個更快的方法?像某種git add-if-matches SomeAwesomeClass.java
嘗試弗洛翼命令:
git add *AwesomeClass.java
但是,這將添加的所有文件與該名稱的當前目錄或任何子目錄儘可能深下。
如果你想添加特定目錄中只有一個特定的文件,你可以嘗試:
git add *subfolder/SomeAwesomeClass.java
您也可以嘗試以下方法來添加一個特定目錄中的所有文件:
git add *subfolder/*
請注意,在星號符號之前或之後沒有空格。
我已經在Mac OS X上使用相同的確切場景嘗試了這些操作。
您可以只輸入git add com
除非有在目錄結構中的其他文件,你不希望添加..
如果要添加的整個子目錄,那麼你可以簡單git的添加目錄
git add com
如果你真的只需要添加一個類,那麼最簡單的方法是做Unix的事情並撰寫命令在一起。在這種情況下,find
命令非常擅長查找具有給定名稱的文件。您可以通過查找的輸出由周圍find命令與$()
git add $(find . -name SomeAwesomeClass.java)
好與git在bash,所以我只是想出一個小偏方。一個簡單的bash功能,您可以添加到您.bash_profile中
function add(){
git add $(git status --porcelain | grep "$1" | cut -c 4-)
}
要使用它,你可以叫add something
,它會增加相匹配的任何文件,所以如果你有2個文件:
com/company/project/folder/subfoler/AwesomeClass.java
com/company/project/folder/subfoler/subfolder/CoolClass.java
您可以撥打
add Awesome
而且這將增加AwesomeClass.java
你有沒有試過[互動分期](http://git-scm.com/book/en/Git-Tools-Interactive-Staging)?這正是它的意義所在。 'git add -i'彈出一個菜單以及更改/未跟蹤的文件列表。要從長長的路徑列表中添加2個文件,您鍵入的內容將類似於這9個按鍵:'u q '。您必須添加的路徑越多,您保存的輸入就越多。您還可以從菜單中選擇補丁添加,差異和其他幾項。 –
@GaryFixler謝謝。我從來不知道互動舞臺。幾乎在所有情況下,這可能都是正確的工具。當你有數百個未跟蹤文件時,它是否也會擴展? –
是的。例如,要添加修改後的文件,在點擊'u'或'2'從菜單中選擇'2:update'後,可以鍵入'3'在列表中添加第三個文件,或者可以鍵入'1 2 5 '要添加文件1,2和5,或者甚至可以輸入'3-27 '來添加文件3到27,甚至可以輸入'1 4 6-13 25-27 34 '將這些添加到列表中。這是一個非常快捷的方式來演示事情。 –