[解決済み】Git: ベアリポジトリのActive Branchを変更する正しい方法?
質問
私のプロジェクトのセントラルストアとして使用されているベアリポジトリがあります。 すべての開発者は
git clone <repo>
で共有しています。 クローンを作成すると、master ブランチのチェックアウトが行われます (このときに
git clone -n
) なぜなら
repo.git/HEAD
には
ref: refs/heads/master
であるため、これを
アクティブブランチ
.
問題は、どのように
アクティブブランチ
を正しく表示できますか? 単純に
repo.git/HEAD
ファイルに直接書き込めばいいのですが、それは面倒だし、まあ、ハチャメチャな感じがします。
をやってみた。
git checkout <otherbranch>
レポに
.git
ディレクトリに移動しましたが、作業ツリーにいなかったので失敗しました。
試しに
git update-ref HEAD refs/heads/otherbranch
が、これは refs/heads/master を refs/heads/otherbranch と同じに更新しただけです (そう、これは本番用ではなくダミーリポジトリで行ったのです!)。
試しに
git update-ref --no-deref HEAD refs/heads/otherbranch
で、これはほぼ成功しました。 それは
HEAD
ファイルを作成しましたが、このファイルには
refs/heads/otherbranch
.
gitバージョンでテストしています
1.7.0.2.msysgit.0
.
を通して行う方法はないのでしょうかね。
git push
というのも、デフォルトのブランチを誰でも変更できるようにするのは、ちょっと危険な気がするからです (!)。
.git
ディレクトリを直接ハックするよりも
HEAD
ファイルを作成します。
解決方法は?
リモートベアレポにアクセスできる場合は、この の記事を参照してください。 :
git symbolic-ref HEAD refs/heads/mybranch
これは、あなたのリポジトリの HEAD ファイルを更新して、それを含むようにします。
ref: refs/heads/mybranch
で説明されているように
git-symbolic-ref
リモートリポにアクセスできない場合は、以下を参照してください。 前回の回答 .
のようなコマンドは
git remote set-head
:
-
のデフォルトブランチは変更されません。 リモート レポを作成します。
を変更するだけです。 リモートトラッキングブランチ に格納されている ローカル レポをrefs/remotes/<name>/HEAD
-
は変わりません
HEAD
自体(繰り返しますがrefs/remotes/<name>/HEAD
が必要です。git symbolic-ref
.
だから
git remote set-head
は
が答えです。
git symbolic-ref HEAD
は、リモートリポに直接アクセスできる場合です。
関連
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] Git リポジトリを以前のコミットに戻すにはどうすればよいですか?
-
[解決済み] Git リポジトリでのマージの衝突を解決するには?
-
[解決済み] リモート Git リポジトリの URI (URL) を変更するには?
-
[解決済み] 新しいローカルブランチをリモートの Git リポジトリにプッシュし、それを追跡するにはどうすればよいのでしょうか?
-
[解決済み] Git で最新のコミットを新しいブランチに移動する
-
[解決済み】Git リポジトリに空のディレクトリを追加するには?
-
[解決済み】ローカルリポジトリのブランチをリセットして、リモートリポジトリのHEADと同じにする
-
[解決済み】ローカルの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: マージ中に部分コミットができない
-
[解決済み】git rev-parseは何をするのですか?
-
[解決済み】GitHubのメッセージの意味: メールのプライバシー制限のためプッシュが拒否されました。
-
[解決済み】Git Push Error: リポジトリデータベースにオブジェクトを追加する権限が不足しています。
-
[解決済み] GitHubに空のブランチを作成する
-
[解決済み] Git - node_modules フォルダをどこでも無視するようにしました。
-
[解決済み] fatal: bad revision "とはどういう意味ですか?
-
[解決済み] Gitのフォルダ構造で変更・追加されたファイルのみをエクスポートする機能
-
[解決済み] git reset --softの実用的な使い方?
-
[解決済み】デフォルトのブランチ名を "master" 以外にした Git リポジトリを作成するにはどうすればよいですか?