1. ホーム
  2. git

[解決済み] git が常に特定のブランチからプルするようにするにはどうしたらいいですか?

2022-03-20 16:32:58

質問

私はgitのマスターではありませんが、これまでいくつかの異なるプロジェクトでgitを使用してきました。 それぞれのプロジェクトで、私はいつも git clone [repository] で、その時点から常に git pull もちろん、未解決の変更がない限りはですが。

最近、前のブランチに戻さなければならなくなり、その際に git checkout 4f82a29 . 再びpullする準備ができたとき、ブランチをmasterに戻さなければならないことに気づきました。 今、私はまっすぐな git pull を指定する必要があり、代わりに git pull origin master これは迷惑なことで、何が起こっているのか完全に理解できていないことを示しています。

何が変わってしまったのか、ストレートにできないのか。 git pull オリジンマスタを指定しない場合、どのように元に戻せばよいのでしょうか?

UPDATEしてください。

-bash-3.1$ cat config
[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[branch "master"]
[remote "origin"]
    url = [email protected]:user/project.git
    fetch = refs/heads/*:refs/remotes/origin/*

UPDATE 2: はっきり言って、私の元の方法が間違っていたかもしれないことは理解していますが、このレポを修正する必要があるのは、単純に git pull をもう一度。 現在、git pull の結果は。

-bash-3.1$ git pull
You asked me to pull without telling me which branch you
want to merge with, and 'branch.master.merge' in
your configuration file does not tell me either.  Please
name which branch you want to merge on the command line and
try again (e.g. 'git pull  ').
See git-pull(1) for details on the refspec.

If you often merge with the same branch, you may want to
configure the following variables in your configuration
file:

    branch.master.remote = 
    branch.master.merge = 
    remote..url = 
    remote..fetch = 

See git-config(1) for details.

を伝えることができます。 git pull どのブランチにマージするかは、正しく動作しますが git pull は、元々私の git checkout .

解決方法は?

[branch "master"] の場合、レポの Git 設定ファイルに次のように追加してみましょう。 .git/config ):

[branch "master"]
    remote = origin
    merge = refs/heads/master

これはGitに2つのことを伝えています。

  1. master ブランチにいるとき、デフォルトのリモートは origin です。
  2. を使用する場合 git pull でリモートやブランチを指定しなかった場合は、デフォルトのリモート (origin) を使い、リモートの master ブランチからの変更をマージします。

なぜこの設定が削除されたのか、よくわかりませんが。他の人が投稿している提案にも従わなければならないかもしれませんが、これはうまくいく(少なくとも助けになる)かもしれません。

設定ファイルを手作業で編集したくない場合は、代わりにコマンドラインツールを使用することができます。

$ git config branch.master.remote origin
$ git config branch.master.merge refs/heads/master