私たちは2人の学生で、共通のアップストリームリポジトリから分岐したオンラインリポジトリ(異なるリポジトリ)に取り組んでいます。
他の生徒が変更、コミット、特定のブランチのリポジトリにプッシュしたとしましょう。
これらの変更を自分のローカルリポジトリにプルするにはどうすればよいですか?
ステージングしたエリアにこれらの変更をコミットしてプッシュする必要がありますか?
ありがとうございました!
other
リポジトリに新しいリモート(たとえば、own
)を追加するだけです。次に、other/<branch>
の変更をローカルブランチにプルします(たとえば、add-other-changes
)。フォークしたリポジトリ(Origin/add-other-changes
)にプッシュします。ここで、add-other-changes
ブランチを完了したら、Pullリクエストを作成し、Origin/master
とマージします。
他のリポジトリの変更を自分のリポジトリにプルします。
# go into your own repo
$ git remote add other <other-student-repo-url> # add a new remote with other's repo URL
$ git fetch other # sync/update local with other's repo
$ git checkout -b add-other-changes # create a new branch named 'add-other-changes'
$ git pull other <specific-branch-name> # pull other/<branch> changes
$ git Push Origin HEAD # Push changes to your own(Origin) forked repo `add-other-changes` branch
両方が同じプロジェクトで作業したい場合は、リポジトリを2回フォークするべきではありません。あなたまたはあなたの友人(両方ではない)がリポジトリをフォークする必要があります。次に、フォークしたものをローカルで複製する必要があります(アクセス権は、リポジトリをフォークした人が付与する必要があります)。
これが完了すると、プロジェクトのメンバーは、リモートに新しい変更があるかどうかを知りたいときに、git remote update
またはより一般的にgit fetch Origin
。
同じブランチで作業していて、ローカルブランチをリモートブランチで更新する場合git pull Origin <branh_name>
共有する必要のある変更を加えた場合:
git add file_path_1 file_path_2 directory_path1 ...
git commit -m "<your brief message>"
git Push Origin <branch_name>
作業ブランチをコミットしてプッシュします。次に、メインブランチから自分のブランチにマージします。すべてのビルドを確認し、競合を解決します。ブランチをコミットしてプッシュします。これで、ブランチをメインブランチにマージすると、機能するはずです。