1. ホーム
  2. git

git pull と git push で異なるデフォルトのリモート (追跡ブランチ) を使用します。

2023-10-28 02:42:20

質問

git リポジトリをセットアップする方法はありますか? git pull はデフォルトで一つのリモートに、そして git push は別のリモートをデフォルトとするのですか?私は 両方とも の値を変更することで remote のブランチセクションの変数 .git/config という変数がありますが、これを各方向ごとに行うにはどうしたらよいでしょうか。

どのように解決するのですか?

Git 1.6.4以降のバージョンでは、Git 1.6.1以降と同じように remote.<name>.pushurl gitの設定 .

これを利用して、読み取り専用の https: プロトコルを使ってプルし、ssh ベースのプロトコルを使ってプッシュする、といった使い方が考えられます。


というのは origin の url ( remote.origin.url ) は https://git.example.com/some/repo.git . これは読み取り専用ですが、sshベースの「URL」を通じて書き込みアクセスが可能です。 [email protected]:some/repo.git . 以下のコマンドを実行し、sshベースのプロトコルでプッシュを実行します。

git config remote.origin.pushurl [email protected]:some/repo.git