今週私が遭遇した問題は、新しいブランチを作成するときに次のようなエラー メッセージが表示されるということです。
参照 'refs/heads/***/***' をロックできません: 'refs/heads/***' が存在します。「refs/heads/***/***」を作成できません
1. 問題の原因
状況は 2 つあります: 1 つは同じ名前のブランチがローカルにすでに存在している場合、もう 1 つは同じ名前パターンのブランチがすでに存在している場合です。
上の図のエラー レポートから判断すると、明らかに 2 番目の状況に属します。
hsl ブランチはプロジェクトにすでに存在しており、新しいブランチは hsl/20220721 です。この状況では、hsl ブランチはファイルと見なすことができると個人的に理解しています。もともと、このファイルには独自のコンテンツがあります。現在、新しいブランチが存在します。ブランチ hsl/20220721。Hsl はフォルダーになり、20220721 はファイルになり、元の hsl ブランチに直接影響します。
2. 解決策
上のスクリーンショットを例に挙げます。
解決策 1: ブランチを削除する
(1) リモートhslブランチを削除する
// 这里的remote一般是origin或者upstream
// 可以通过git remote -v 检查远程分支名称,确认需要删除分支的哪个远程位置
git push <remote> --delete hsl
(2) ローカルブランチを削除する
// 注意:
// 1、执行此命令的时候不要在hsl分支上哦,git是不允许删除我们当前所在的分支的
// 2、-d表示当分支已经被推送并与远程分支合并时才会删除,如果分支未被推送或合并,请使用-D
git branch -d hsl
解決策 2: ブランチ名を変更する
具体的な手順については、 ブランチ名を変更する方法を 参照してください。
その後、通常どおり新しいブランチを作成できます。