- IT総合
-
2025-04-20
ファイルを指定してGit管理対象から除外したいとき
git rm --cached [ファイル名]
--chached
オプションを付けているのはファイルを残したいためです。
このオプションを付けないとファイルごと削除されてしまうので注意してください。
ディレクトリとそれ以下を一括で処理したいときは-r
オプションを付ける
git rm --cached -r [ディレクトリ名]

ファイルを指定してGit管理対象から除外したいとき
git rm --cached [ファイル名]
--chached
オプションを付けているのはファイルを残したいためです。
このオプションを付けないとファイルごと削除されてしまうので注意してください。
ディレクトリとそれ以下を一括で処理したいときは-r
オプションを付ける
git rm --cached -r [ディレクトリ名]
Gitでソース管理しているプロジェクトを開発する中で、間違って必要なブランチを削除してしまったら、もう取り戻せないのでしょうか?
そんなことはありません!ご安心ください。
間違って削除してしまったブランチを復活させる方法がありましたのでご紹介します。
検証環境:git version 2.39.2.windows.1
まずは履歴から該当ブランチの最後のコミットを探します。
Gitの変更履歴を表示するには以下のようなコマンドを実行します。
git reflog
コマンドを実行すると次のように履歴が表示されます。
66ee5fa HEAD@{0}: checkout: moving from mybranch to master 4bba15a HEAD@{1}: commit: commit message fc11042 HEAD@{2}: checkout: moving from master to mybranch ...
表示された履歴から該当ブランチの最後のコミットを見ると2行目のHEAD@{1}
がそれにあたります。
{}
の中の数字はログ番号です。
あまり使うことはないかもしれませんが、メモ代わりに投稿しておきます。
特定の日時を指定してコミットするには--date
オプションを使って日時を指定します。
git commit -m "コミットメッセージ" --date="Jan 1 00:00:00 2024 +0900"
一番簡単な方法です。
XcodeのCommand Line Toolsをインストールするとgitが使えるようになります。
xcode-select --install
gitを使ってソース管理し開発をしていて、差分ファイルをリリースするときのTipsです。
差分を抽出する
git diff [古いブランチ名]..[新しいブランチ名] git diff [古いブランチ名] [新しいブランチ名]
ファイル名だけを列挙したいとき
git diff --name-only [古いブランチ名] [新しいブランチ名]
ファイル名のリストをテキストファイルにリダイレクトで書き出す
git diff --name-only [古いブランチ名]..[新しいブランチ名] >> diff.txt
ブランチをアーカイブ出力
git archive [ブランチ名] -o archive.zip
出力するディレクトリを指定
git archive --prefix=archive/ [ブランチ名] -o archive.zip
差分抽出とアーカイブ出力を組み合わせて、抽出した差分ファイルをアーカイブ出力
git archive --prefix=archive/ [新しいブランチ名] (git diff --name-only [古いブランチ名] [新しいブランチ名] --diff-filter=ACMR) -o diff.zip
A | 追加 |
C | コピー |
M | 変更 |
R | リネーム |
D | 削除 |
小文字にすると逆になるので、以下のようにしても同じことになります。
git archive --prefix=archive/ [新しいブランチ名] (git diff --name-only [古いブランチ名] [新しいブランチ名] --diff-filter=d) -o diff.zip