1. ホーム
  2. git

[解決済み] 一部のファイルだけをコミットするにはどうすればよいですか?

2022-03-17 11:54:27

質問

私は2つのプロジェクトを持っています。1つは"official"プロジェクトで、もう1つは軽い修正(いくつかのファイルを追加したもの)です。私は新しいブランチを作成し、新しいファイルをそれらに置きました。しかし、開発中に、両方のブランチに共通するいくつかのファイルが変更されました。

これらのファイルのみをコミットするにはどうすればよいですか?

解決方法は?

あるブランチに変更をコミットし、その変更を他のブランチで見えるようにしたいと思います。git では、ブランチを変更したときに HEAD の上に変更がないようにしなければなりません。

によって変更されたファイルのみをコミットするのです。

git commit [some files]

また、きれいなステージングエリアがあることを確認したら、次のようにすることもできます。

git add [some files]       # add [some files] to staging area
git add [some more files]  # add [some more files] to staging area
git commit                 # commit [some files] and [some more files]

そのコミットを両方のブランチで利用できるようにしたい場合は、次のようにします。

git stash                     # remove all changes from HEAD and save them somewhere else
git checkout <other-project>  # change branches
git cherry-pick <commit-id>   # pick a commit from ANY branch and apply it to the current
git checkout <first-project>  # change to the other branch
git stash pop                 # restore all changes again