git分支detached HEAD的解决方法
发表于|更新于|Git
|浏览量:
git分支detached HEAD的解决方法
Detached HEAD 如何迁移到master分支上
这个从理论上介绍了detached head的原理
Id CommandLine
1 git branch -v
2 git branch tmp
3 git checkout tmp
4 git checkout master
5 git merge tmp
6 git status
7 git branch -d tmp
文章作者: Fleming Chen
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Fleming's Blog!
相关推荐
2017-05-29
git提交与gerrit代码审查细节
git提交与gerrit代码审查细节代码拉取和提交 配置config文件12345Host gerrit HostName 10.10.1.127 Port 29418 User 1016739 IdentityFile ~/.ssh/id_ed25519 克隆1git clone "ssh://gerrit/<project path>" my-project && cd my-project && f="$(git rev-parse --git-dir)/hooks/commit-msg"; curl -o "$f" http://10.10.1.127:30090/tools/hooks/commit-msg; chmod +x "$f" 仅克隆某个分支到本地目录1git clone -b <分支名> --single-branch <仓库地址> <目标目录> 代码补充提交12git add .git c...
2017-02-08
git子模块创建提交与gerrit之间的细节
git子模块创建提交与gerrit之间的细节 在本地创建好项目工程 拉取远程代码库 将本地导出的工程添加到克隆下来的文件夹中 将子模块add到项目中,并做好依赖关系 修改子模块的url地址 注意:gerrit权限的问题 不能使用本地路径 不能使用ssh://1016739@10.10.1.127:29418/app/android/library/radiolib这种个人链接 要用相对地址../library/radiolib (一般android的项目都建立在app/android下)或者../../../../../app/android/library/radiolib注意是相对于根目录的所在地址,以免拉取不到对应的代码。
2017-02-08
git打包导出某次或之后的代码
git打包导出某次或之后的代码 打包某次commit: 1git diff-tree -r --no-commit-id --name-only f4710c4a32975904b00609f3145c709f31392140 | xargs tar -rf update_20240529.tar 使用命令把某次节点后的文件导出:window下: 1git diff f4710c4a32975904b00609f3145c709f31392140 HEAD --name-only | xargs tar -rf update_20240529.tar
2017-02-08
git合并开发分支且无需提交历史
git合并开发分支且无需提交历史如果你想要将开发分支(例如 dev 分支)合并到主分支(例如 master 分支),但不保留开发分支的所有提交历史,并且希望在 master 分支上创建一个新的提交,你可以使用 Git 的 merge 命令结合 --squash 选项。以下是具体步骤: 确保你在 master 分支: 1git checkout master 将 master 分支更新到最新的状态: 1git pull origin master 使用 --squash 选项合并 dev 分支的更改: 1git merge --squash dev 在此之后,Git 会应用 dev 分支的所有更改,但是不会自动创建新的提交或移动 HEAD。你需要手动创建一个新提交来保存这些更改: 1git commit -m "Merge dev branch changes into master as a single commit" 最后,推送更新后的 master 分支到远程仓库: 1git push origin master 使用 --squash 选项...
2017-08-27
git switch和checkout的区别
git switch和checkout的区别git switch 和 git checkout 都可以用来切换分支,但它们的设计理念、功能和使用方式有所不同。git switch 是 Git 2.23 版本(2019年发布)引入的新命令,旨在将 git checkout 的功能进行拆分,使其职责更单一、更清晰。 以下是它们的主要区别: 1. 设计目的与职责 git checkout: 这是一个“多面手”命令,功能非常复杂。它既可以用来切换分支,也可以用来恢复工作区文件(丢弃修改)、创建新分支等。这种多功能性使得它容易混淆,尤其是在处理文件和分支时。 git switch: 这是一个“单一职责”命令,专门用于切换分支。它的设计目的就是让分支切换操作更清晰、更安全、更直观。 2. 创建新分支的方式 git checkout: 创建并切换到新分支:git checkout -b <new-branch-name> 从特定提交创建新分支:git checkout -b <new-branch-name> <start-point> git swi...
2017-09-13
Repo upload的细节
Repo upload的细节1git config --get remote.gerrit.review 输出: 1ssh://gerrit 要正确设置review url 到底应该是SSH还是HTTP???12cd ~/falconrepo forall -c 'git config --replace-all remote.gerrit.review http://10.10.1.127:30090/' 然后验证: 12cd prebuilts/sdkgit config --get remote.gerrit.review ✅ 应该输出: 1http://10.10.1.127:30090/ 🔁 建议对 cust/app/orion-sipclient 也执行一次验证和修复! 🧠 为什么 review URL 必须是 HTTP,不能是 SSH?因为: commit-msg hook 是从 http://.../tools/hooks/commit-msg 下载的 Gerrit Web UI 链接是 http://.../c/12345...
公告
欢迎来到我的博客,有任何疑问可以随时联系我交流讨论!






