2012-12-17 50 views
0

在git中,如何將所有文件添加到diffs包含指定字符串的下一個提交?git添加包含X的文件

我在尋找一個像:git add search('changes')

+0

Diffs?添加包含該字符串的文件可以嗎? (它會甚至有所作爲嗎?:D) – Ryan

回答

3

看看grep -Rl(遞歸grep,列出帶匹配的文件)和xargs(將文件列表作爲參數傳遞給另一個程序)。

+0

我認爲@Balthamos爲這個問題提供了一個更好的答案 - 它包括實際的例子和匹配文件,其中* diff *包含字符串,而不是所有包含字符串的文件。 – tomlogic

1

你可以做這樣的事情:

git diff -S "regex" --name-only | xargs git add 

注意到,上面的命令將在匹配的文件添加所有變化。如果您想要更多控制添加哪些胖子,我強烈建議使用git add -p(不僅適用於此場景,而且始終適用)。

如果你想減少你想看的文件,你可以將它與第一個提到的命令結合起來。

git diff -S "regex" --name-only | xargs git add -p