git add コマンド

参考:

git-add | Git Documentation [Official]

git rm コマンド

ステージング領域からファイルの登録を削除する。コミットすることでブランチからファイルが削除される。(コミットの履歴としては残り続ける。)

$ git rm --cached path/to/file_or_directory
$ git commit -m 'Delete path/to/file_or_directory'
こちらのページを参照

参考:

git-rm | Git Documentation [Official]

git reset コマンド

HEAD の位置はそのまま、インデックスをリセット (ステージングを全てキャンセル) する。

$ git reset @

特定のファイルまたはディレクトリ以下のみ、ステージングをキャンセルする。

$ git reset @ -- path/to/file_or_directory
こちらのページを参照

参考:

git reset | WWW クリエイターズ

git-reset | Git Documentation [Official]

ワイルドカードで再帰的に合致するファイルをステージングする

find コマンドの結果を xargs コマンドにパイプする。-print0 及び -0 をそれぞれオプションとして指定することでパスにスペースが含まれる場合に対応する。

$ find . -path 'path/to/somewhere/**/*.ext' -print0 | xargs -0 git add

参考:

Recursively add files by pattern – Stack Overflow

特定のファイルを除外してステージングする

:! を頭に付けて除外するパスを指定する。

$ git add -- . :!path/to/excludes_files

参考:

Add all files to a commit except a single file? – Stack Overflow

pathspec … did not match any files

現象:

git rm コマンドを実行すると、パスの記述に一致するファイルが存在しない旨のエラーが出る。

fatal: pathspec ... did not match any files

原因:

リポジトリに登録されたファイルやディレクトリと合致するものが見つからなかった。

対処法:

--ignore-unmatch オプションを使うと、リポジトリに登録されていないファイルやディレクトリのみをインデックスから削除できる。(エラーメッセージは抑制される。)

$ git rm --ignore-unmatch path/to/somewhere/*

もしくは、通常の rm コマンドで削除するだけで良い。

$ rm path/to/somewhere/*

参考:

git rm で fatal: pathspec did not match any files が出るときの解決方法 – Qiita

fatal: pathspec ‘.’ did not match any files の解決方法 – Qiita

記事をシェアする:
タグ:

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Protected by reCAPTCHA