三、Git入门与基本使用(3)
admin
2023-07-25 21:40:05
0

11、分离头指针情况下的注意事项
 所谓分离头指针,即在git切换到某一commit时,没有绑定在分支或者tag上,此时如果在该commit下进行了文件修改,并且提交commit时,git在日后清理该提交而不保存,因此在进行commit查看时,最好绑定在某一branch或者tag上操作,当然这种操作的好处也存在,即不会破坏原有的branch环境。

$ git checkout 0bd98cb5d0d969cfc35d   #直接切换到commit上
Note: checking out '0bd98cb5d0d969cfc35d'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b 

HEAD is now at 0bd98cb Add second file

$ git status                                        #此时状态,分离头指针状态
HEAD detached at 0bd98cb
nothing to commit, working tree clean

$ echo "Update second file " >> second.txt   #在分离头指针状态下,修改文件并提交

$ git commit -am"Update second file"
[detached HEAD 71faae4] Update second file
 1 file changed, 1 insertion(+)

 $ git checkout master
Warning: you are leaving 1 commit behind, not connected to
any of your branches:

  71faae4 Update second file

If you want to keep it by creating a new branch, this may be a good time
to do so with:

 git branch  71faae4

Switched to branch 'master'

$ gitk    #查看在分离头指针下的提交,可以发现git没有保存

三、Git入门与基本使用(3)

$ git branch newsecond 71faae4     #将修改的commit绑定到一个新的分支

$ gitk     #查看此时提交,可以发现git已经保存刚才的commit

三、Git入门与基本使用(3)

12、进一步理解HEAD和branch
 HEAD无论是在某一分支或者tag其,最终都会是在某一commit上。同时使用HEAD可以指代当前的commit。

$ cat .git/refs/heads/temp
7376bc5b2ebc3e13d4c4552ebdef348a17cd4eef

$ git cat-file -t 7376bc5b2
commit

13、怎么删除不需要的分支

$ git branch
  master
  newsecond
* temp

$ git branch -d newsecond
error: The branch 'newsecond' is not fully merged.
If you are sure you want to delete it, run 'git branch -D newsecond'.

$ git branch -D newsecond
Deleted branch newsecond (was 71faae4).

$ git branch
  master
* temp

14、怎么修改最新commit的message

$ git log -n1      #修改前
commit 7376bc5b2ebc3e13d4c4552ebdef348a17cd4eef (HEAD -> temp)
Author: Jone <764651475@qq.com>
Date:   Thu Mar 14 17:03:07 2019 +0800

    Update fourth file

$ git commit --amend                  #使用该命令进入vim编辑界面直接修改即可
[temp 097d397] Update fourth file.txt
 Date: Thu Mar 14 17:03:07 2019 +0800
 1 file changed, 1 insertion(+)

$ git log -n1            #修改后
commit 097d397f672da771da95cf9baf49057047846617 (HEAD -> temp)
Author: Jone <764651475@qq.com>
Date:   Thu Mar 14 17:03:07 2019 +0800

    Update fourth file.txt

15、怎么修改老旧commit的message

$ git log -n3     #要修改导入第二个commit的message
commit 097d397f672da771da95cf9baf49057047846617 (HEAD -> temp)
Author: Jone <764651475@qq.com>
Date:   Thu Mar 14 17:03:07 2019 +0800

    Update fourth file.txt

commit 1d63ec82259b237f58e7525ccf856a03fb880fcd
Author: Jone <764651475@qq.com>
Date:   Thu Mar 14 17:01:46 2019 +0800

    Add fouth file

commit b843c287804d2b5886167740f9e6c0d327540ee1 (tag: 03tag)
Author: Jone <764651475@qq.com>
Date:   Thu Mar 14 17:00:21 2019 +0800

    Add third file

$ git rebase -i b843c287804d2b588616    #选择倒数第二个commit的 base信息,即导入第三个commit
[detached HEAD bfd373a] Add fouth file.txt
 Date: Thu Mar 14 17:01:46 2019 +0800
 1 file changed, 1 insertion(+)
 create mode 100644 fourth.txt
Successfully rebased and updated refs/heads/temp.

第一张图为需要修改的信息,将pick改为r即可
三、Git入门与基本使用(3)
第二张图为修改后的commit 信息
三、Git入门与基本使用(3)

$ git log -n3     #查看修改后的message
commit ce587039661c88fd508035fd103a012e33c057ac (HEAD -> temp)
Author: Jone <764651475@qq.com>
Date:   Thu Mar 14 17:03:07 2019 +0800

    Update fourth file.txt

commit bfd373ab1dd5b2d578bac9cacd4d89d0066c51af
Author: Jone <764651475@qq.com>
Date:   Thu Mar 14 17:01:46 2019 +0800

    Add fouth file.txt

commit b843c287804d2b5886167740f9e6c0d327540ee1 (tag: 03tag)
Author: Jone <764651475@qq.com>
Date:   Thu Mar 14 17:00:21 2019 +0800

    Add third file

相关内容

热门资讯

普京称考虑全面禁止柴油出口 △当地时间28日,俄罗斯总统普京主持召开国内燃油市场保障会议。当地时间6月28日,俄罗斯总统普京在主...
委内瑞拉强震遇难人数升至145... △当地时间28日凌晨,委内瑞拉拉瓜伊拉州,震后救援现场。当地时间28日,委内瑞拉全国代表大会主席豪尔...
AI抢专家饭碗?一线社工被AI... “在AI时代,专家甚至可能不如豆包。我们现在去社区里,对方都说,豆包就能解决大部分问题。你们专家来,...
第十四届中俄(黑河)林草生态建... 科技日报记者 朱虹 通讯员 温浩 6月24日,第十四届中俄(黑河)林草生态建设学术论坛在黑龙江省黑河...
如何在沈阳筛选适配多场景的防爆... 在工业生产、现代农业、节能环保等多个领域,涉及易燃易爆介质的工况下,对测控仪表的防爆性能、测量精度都...
原创 预... 在预算三千内挑选手机,大家最看重颜值与实用性的完美结合。今天为大家盘点2000-3000元好看又好用...
原创 央... #央视曝手机测评作弊乱象 #,央视财经专项调查栏目曝光手机数码测评行业全链条作弊黑幕,完整揭露当下测...
高塔变身“电波卫士” 科技赋能... 无形的空中电波,是城市平稳运行、民生通信保障、公共安全防控的重要“生命线”,深度赋能社会生产生活的方...
手机直连卫星布局加速!中国移动... 快科技6月28日消息,据《科创板日报》报道,中国移动下一颗手机直连卫星试验星03星近期将择机发射。 ...
广东一大学禁止小米汽车入校!学... 6月28日,多家媒体报道称,广州华立学院禁止小米汽车进入校园。 该校工作人员在接受采访时说,其他外来...