[解決済み] 現在のブランチでないブランチに 'git pull' するには?
質問
を実行すると
git pull
を実行すると
master
ブランチでは、通常
origin/master
. という別のブランチにいます。
newbranch
という別のブランチにいるのですが、このブランチに対して
git pull
から
origin/master
に
master
を実行することができません。
git checkout
を実行して、プルが完了するまで選択したブランチを変更することができません。 これを行う方法はありますか?
背景を説明すると、リポジトリはウェブサイトを保存しています。 私はいくつかの変更を
newbranch
に変更を加え、デプロイしました。
newbranch
. 現在、これらの変更は上流にマージされ
master
ブランチにマージされたので、私はこのウェブサイトを再び
master
というブランチを作成します。 この時点では
newbranch
と
origin/master
は同じですが
master
は遅れている
origin/master
に遅れていて、更新する必要があります。 問題は、従来の方法でやると
$ git checkout master
# Uh oh, production website has now reverted back to old version in master
$ git pull
# Website is now up to date again
上記と同じことを実現したいのですが(
git checkout master && git pull
) を実現する必要がありますが、作業ディレクトリを処理中に以前のリビジョンに変更する必要はありません。
どのように解決するのですか?
触りたくないワークツリーがあるのだから、別のものを使えばいい。 クローンは安いから、このために作られたんだ。
git fetch origin master # nice linear tree
git clone . ../wip -b master # wip's `origin/master` is my `master`
cd ../wip # .
git pull origin origin/master # merge origin's origin/master
git push origin master # job's done, turn it in.
cd ../main
rm -rf ../wip # wip was pushed here, wip's done
git checkout master # payload
ここでの他の回答の問題点は、実際にpullを行わないことです。もし、pullを設定したマージやリベースが必要な場合は、別のワークツリーと上記の手順が必要です。そうでなければ、単に
git fetch; git checkout -B master origin/master
で十分です。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] まだプッシュされていない Git マージを元に戻す
-
[解決済み] Git で現在のブランチ名を取得するには?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み] Git で最新のコミットを新しいブランチに移動する
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】マージ後のコミットでGitエラー - fatal: マージ中に部分コミットができない
-
[解決済み】fatal: 有効なオブジェクト名ではない: 'master'
-
[解決済み】git-mergeの-dry-runオプションはありますか?
-
[解決済み] あなたのブランチは 'origin/master' より 3 コミット進んでいます。
-
[解決済み] GitHubに空のブランチを作成する
-
[解決済み] 短いGitバージョンのハッシュを取得する
-
[解決済み] GitBash | origin master - rejected (fetch first) | GitHub リポジトリにファイルがない。
-
[解決済み] 新しいBitbucketでリポジトリを削除するにはどうすればよいですか?
-
[解決済み] 別ブランチでの git pull
-
[解決済み] チェックアウトを使わずにGitブランチをマージ、アップデート、プルする