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-02-08
git子模块项目开发指南
git子模块项目开发指南一、从远程仓库中克隆到本地(带有子模块)git clone –recurse-submodules 父仓库地址如: 1git clone --recurse-submodules "ssh://1016739@10.10.1.127:29418/app/android/Platin_ElderCare" && scp -p -P 29418 1016739@10.10.1.127:hooks/commit-msg "Platin_ElderCare/.git/hooks/" 如果忘记加–recurse-submodules,可以在clone后执行 12git submodule init // 初始化子模块git submodule update // 更新子模块与主仓库中的子模块代码同步 或者 1git submodule update --init 嵌套的(子仓库中包含子仓库) 1git submodule update --init --recursive 如果修改了.gitmodules,...
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常用指令基本提交流程123456git add .git commit -m "提交信息"git push origin HEAD:refs/for/developgit pull origin <branch>git branch --set-upstream-to=origin/<branch> <branch> 生成ssh key 使用 ed25519(推荐,安全性更高): 1ssh-keygen -t ed25519 -C "your_email@example.com" 使用 RSA(兼容性更好): 1ssh-keygen -t rsa -b 4096 -C "your_email@example.com" -C 后面是注释,通常填写你的邮箱。 如何查看某一个提交修改的内容1git show 提交id 清除未被跟踪的文件 删除所有未跟踪的文件1git clean -f 删除所有未跟踪的文件和目录1git clean -fd 删除包括.gitignore...
2017-02-25
git补丁
git补丁在Git中,打patch(生成补丁)和应用patch(应用补丁)是两个常见的操作,主要用于代码的修改分享或版本间的差异同步。下面是具体步骤: 生成Patch(打Patch) 确定变更范围:首先,确保你的工作区是干净的(没有未提交的更改),然后使用git add将你想要包含在补丁中的文件暂存起来。 创建补丁: 如果你只需要针对最后一次提交创建补丁,可以使用如下命令:1git format-patch -1 HEAD 这条命令会为最近的一次提交生成一个补丁文件。 若要为特定的提交ID创建补丁,可以替换HEAD为你想打补丁的提交ID。 如果需要对一系列的提交创建补丁,可以通过指定起始和结束提交ID来完成,例如:1git format-patch sha1^..sha2 如果你已经修改了一些文件,但还不想将这些更改提交到仓库中,并希望为这些未提交的更改创建一个补丁。首先使用git add将某些更改暂存,再使用如下命令,例如:1git diff --cached > staged-changes.patch 应用Patch(应用补丁) 获取补丁文件:确保你已经获得...
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-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...
公告
欢迎来到我的博客,有任何疑问可以随时联系我交流讨论!






