272

削除、追跡されていないなど、何をしてもすべてのファイルを追加する方法はありますか? コミットのように。特に大規模な製品に取り組んでいる場合は、コミットするたびにすべてのファイルをgit add必要としたくありません。git rm

4

10 に答える 10

320

試す:

git add -A

警告: git 2.0 (mid 2013) 以降、これは常に作業ツリー全体にファイルをステージングします。
作業ツリーの現在のパスの下にファイルをステージングする場合は、次を使用する必要があります。

git add -A .

参照:の違いgit add -Agit add .

于 2010-08-16T22:57:38.760 に答える
75

試す

git add -u

" u" オプションは更新を表します。これにより、リポジトリが更新され、ローカル コピーで削除したリポジトリからファイルが実際に削除されます。

git add -u [filename]

1 つのファイルだけに削除をステージングします。プッシュされると、ファイルはレポになくなります。

あるいは、

git add -A .

と同等です

git add .

git add -u .

余分な「.」に注意してください。git add -Aと_git add -u


警告: git 2.0 (mid 2013) 以降、これは常に作業ツリー全体でファイルをステージングします。
作業ツリーの現在のパスの下にファイルをステージングする場合は、次を使用する必要があります。

git add -A .

参照:の違いgit add -Agit add .

于 2012-05-08T18:54:02.797 に答える
52

次の回答はGitバージョン1.xにのみ適用されますが、Gitバージョン2.xに適用されます。

あなたが欲しいgit add -A

git add -Aすべてのステージ;

git add .削除せずに、新規および変更されたステージ。

git add -uステージは変更および削除され、新しいものはありません。

于 2013-03-22T02:43:36.507 に答える
13

削除されたファイルが追加されるかどうかはわかりませんがgit add .、ルートから追跡されていないすべてのファイルが追加されます。

于 2010-08-16T22:54:21.080 に答える
5

私は、コマンド ライン git lover にとって使いやすい環境である G2 プロジェクトを作成しました。
github - G2 https://github.com/orefalo/g2からプロジェクトを取得してください。

便利なコマンドがたくさんあり、そのうちの 1 つはまさにあなたが探しているものです。freeze

freeze - リポジトリ内のすべてのファイル (追加、削除、変更) をステージング領域に凍結し、次のコミットに含めるためにそのコンテンツをステージングします。特定のパスもパラメーターとして受け入れます

于 2012-05-08T18:57:29.183 に答える
5

Git の新しいバージョンの場合。

私は試しgit add -Aてみましたが、これは促されました、

警告: ツリーのサブディレクトリからパス引数を指定しない 'git add --all (または -A)' の動作は、Git 2.0 で変更されるため、今後は使用しないでください。ツリー全体のコンテンツを追加するには、次を実行します。

git add --all :/ (または git add -A :/)

コマンドを現在のディレクトリに制限するには、次を実行します。

git add --all . (または git add -A 。)

現在の Git バージョンでは、コマンドは現在のディレクトリに制限されています。


次に、以下を試しました。

git add --all :/
于 2015-11-06T04:35:38.423 に答える
5

これは私の代替手段です(任意のbashで):

$ git status -s|awk '{ print $2 }'|xargs git add

リセットするには

$ git status -s|awk '{ print $2 }'|xargs git reset HEAD
于 2012-08-03T10:31:03.043 に答える
3

次の行を使用して、.gitignore にリストされているものを除いて、変更されたファイルと新しく作成されたすべてのファイルをステージングするために追加します。

git add $(git ls-files -mo --exclude-standard)

(構文 $() は bash シェル用です)。コマンドラインオプション -mod は削除されたファイルも追加する必要があると思います...または、空白が埋め込まれたファイル名がある場合は、次のワンライナーでうまくいくはずです:

git ls-files -z --deleted --modified --others --exclude-standard | xargs -0 git add
于 2015-07-30T10:29:12.763 に答える