0

私はGitにかなり慣れていません。リポジトリを作成し、マスター ブランチにいくつかのファイルを追加しました。その後、特定のサブプロジェクトに取り組みたいと思うたびに、「csv_reader_branch」、「datetime_object」などの名前で「新しいブランチの作成」を行ってきました。

現在、多くのブランチがあり、それらのブランチをマスター ブランチにプッシュしたいと考えています。通常、プロジェクトは重複していませんが、マージする前に比較できるようにしたいと考えています。

ベストプラクティスは何ですか?

PS:また、多くの同様の質問で「フォーク」が言及されていますが、ローカルでgitを実行していて、githubメニューに「フォーク」が見つかりません。何か不足していますか?

よろしく

4

1 に答える 1

1

git diff branchname files現在のブランチをリポジトリの他のブランチと比較できます。

ブランチの変更をマスターに適用するには、マスター ブランチにチェックアウトして を使用する必要がありますgit merge branchname。もう1つの可能性は、特定のコミットを「チェリーピック」することですが、ブランチがマスターから分割されて以来、チェリーピックされたコミットだけではなく、それ以前のすべてのコミットが適用されることに注意してください。

3 つ目の可能性は、コミットを 1 つだけ適用したい場合は、ブランチで を使用git format-patchし、生成されたファイルを を使用して目的のブランチに適用することですgit apply

編集:忘れていましたが、git rebase代わりに使用する4番目の可能性がありますgit mergeが、正直なところ、gitの使用が本当に上手になる前に使用することは避けます。

いずれにせよ、問題は、ファイルの同じ部分が 2 つのブランチで編集されたときに発生するマージの競合を解決することです。

于 2012-10-17T12:41:00.500 に答える