私はしばらくの間 SVN を使用しており、現在はプロジェクトで Git を使用しています。git pull を実行した後で競合を解決した後、何をすべきか正確にはわかりません。ちなみに亀のGITを使っています。
したがって、ほとんどの場合、コミットを行ってからプルすると、自動的にマージされ、プッシュに進むことができます。ただし、競合がある場合は、競合を解決するように求められます。私は tortoiseGit の組み込みツールを使用してそれを行います。次に、コミットするように求められ、プロジェクト内の変更されたすべてのファイルの大きなリストが表示されます。
現在、これらの多くは決してコミットされるべきではないローカルの変更です..しかし、私はこの git ブログを読みました: http://randyfay.com/node/89、より具体的には:
Tortoise Git の 1 人のユーザーは、pull を実行し、マージの競合が発生し、マージの競合を解決してから、結果をコミットするときにコミットするファイルのリストを注意深く調べます。そこにはたくさんのファイルがあり、彼はマージの競合がいくつかのファイルだけに関係していることを知っていました。彼のコミットでは、彼が関与していない他のすべてのファイルの変更のチェックを外し、結果をコミットしてコミットをプッシュしました。
git リポジトリの状態を台無しにするために、どのファイルを選択してコミットする必要があるかを知るにはどうすればよいですか?
編集:これはうまくまとめられています。私に起こったことです。修正しましたが、将来的に防ぐ方法を理解する必要があります。
何人かがコミットしている...そして私が彼らの仕事を私のものに引っ張ると、デフォルトで自動マージが行われます。そのマージ コミットを押し戻して、台無しにしないようにする必要があります。
私が説明している状況は、自動マージによるプルが発生したときに発生しました。マージのほとんどは (通常はそうです) 成功しました。しかし、1つのことが矛盾しました。競合は解決されました。しかし、この場合、開発者は他のすべてのものをコミットしませんでした (それらは正常にマージされ、インデックスに自動的に追加されました)。彼は自分が解決した (理解した) ことだけをコミットしました。彼は、首尾よくマージされてインデックスに追加された他のすべてのマージされたものに責任があることを知りませんでした。それが今回の災害の話です。