Стан "немає гілки" називається відокремленою ГОЛОВОЮ. Це називається тому, що посилання HEAD не прикріплене до жодної гілки, натомість вказує безпосередньо на коміт. Щоб приєднати HEAD до гілки, яка вказує на поточну комісію HEAD, використовуйте git checkout -b branchname
.
Ви можете безпечно оновити існуючу гілку, щоб включити комісії в HEAD з цією послідовністю:
git branch temp
git checkout branchname
git merge temp
git branch -d temp
Або, що рівно, використовуючи позначення рефлогу, HEAD@{1}
щоб уникнути необхідності робити тимчасову гілку:
git checkout branchname
git merge HEAD@{1}
Використання тимчасової гілки було б гарною ідеєю, якщо ви не збиралися робити злиття негайно.
Якщо ви хочете примусово перезаписати існуючу гілку, щоб вказати на команду в HEAD, яку ви можете використовувати git branch -f branchname && git checkout branchname
. Якщо фіксація в HEAD не базується на поточній підказці назви гілки, це призведе до нешвидкої зміни назви гілки, якої ви зазвичай хочете уникати (це розглядається як історія перезапису).
git merge $COMMIT_SHA
колись був у іншій галузі.