Gitの別のコンピューターのリポジトリから引っ張るにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/4131164

  •  29-09-2019
  •  | 
  •  

質問

たとえば、2つのコンピューターにOrigin Repositoryをクローニングしました。次に、先に進んで、いくつかの変更を加えて、コンピューターAのローカルリポジトリにコミットします。これらの変更をコンピューターBに引き出すにはどうすればよいですか?コンピューターAとBの両方がネットワークに接続されています。

私が探しているのは、誰かが手動でパッチを作成して私に送信することに相当するものです。これを私の作業コピー/ローカルリポジトリに適用できます。

役に立ちましたか?

解決

引っ張りたいマシンにアクセスできる場合 ssh, 、sshを介してリモコンとしてリポジトリを追加してから、リモートのように引っ張ることができます。

$ git remote add repo_b username@host:path/to/repository.git
$ git pull repo_b master

(リモートを追加する手順をスキップして、完全なURLを指定するだけです git pull リモート名の代わりにコマンドですが、リポジトリから定期的に引っ張る場合は、リモコンとして追加すると、多くのタイピングを節約できます。)

他のヒント

見て git pull --help

これは次のようなものを与えます git pull /my/other/repository

実際のサーバーを設定できます gitデーモン. 。それ以外の場合は、使用できます gitバンドル, 、Gitの内部表現を、バンドルできないファイルにバンドルします git pull もう一方の端に。

たとえば、gitドキュメントから、すべてをバンドリングしてください:

git bundle create file.bundle master

次に、もう一方の端では、次のようなことができます。

git pull file.bundle HEAD

SSHでコンピューターBに接続できる場合は、以下を使用できます。

git clone user@host:/path/to/repo

このSSH接続を介してリモートトラッキングを可能にし、Git Pull/Pushを使用できるようにします。

別のコンピューターを使用したローカルリポジトリのために私のために働いた:

git remote add origin_username username@10.0.0.2:/home/username/dev/project/main/.git/

git pull origin_username master

また

git pull origin_username some_branch

私は思いついた

git clone /path/to/local/repository

少し遅すぎますが、それはすべての価値があり、アントワーヌペリスの答えを拡張するために、あなたは、より多くのコミットを含む同じリポジトリを持っているSSHホストから引き出すこともできます。 リモート 構成へ:

git pull user@host:/path/to/repo  # while in the local repo folder

ただ明確にするために - これの可能性のある使用の1つは、2つのホスト(AとB)がある場合です。 リモート, 、そしてあなたはホストAにいくつかの変更を犯し、それらをにプッシュしたくない リモート (まだ)が、代わりにホストBからコミットを引き出したいと思っています。 リモート.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top