git随笔

  • 概念
    • 工作区
    • 暂存区
    • 已提交
    • 工作流程: 1. 修改工作区(增加或者删除)2.暂存工作区的修改 3. 提交暂存区
git init
git add [ <file> | <path> | . ]
git commit -m '111'
git commit -am 'commit message'
# 等效于 git add . 然后 git commit -m 'commit message'
git log
git rm --cached <file>
git rm <file> 等价于 rm <file>, git add <file>
就是说,git rm的作用:先将<file>从工作区中删除,然后暂存修改
git reset HEAD <file> #将file从暂存区移除
# git重命名操作:实际上是先copy一个内容一样的新文件,然后删掉旧文件。
# 所以注意git add需要暂存两个文件的修改(一个修改是增加新文件,另一个修改是删除旧文件)
git mv <file1> <file2> 等效于 mv <file1> <file2>, git add <file1> <file2>
git branch [new_branch]
git branch -d <branch> # 删除分支
git branch -m <branch_old_name> <branch_new_name> #分支重命名
git checkout <branch>
git checkout -b <new_branch>
git checkout -- <file> #将file的工作区的修改丢弃掉, 将它还原成上次提交时的样子`
git merge <other_branch>
git reset --hard [<commit_id> | HEAD^^ | HEAD~2] #重置为上一次提交的上一次提交
git stash
git stash list
git stash save 'save_message'
git stash pop # 恢复保存的内容同时删除stash
git stash apply #恢复保存的内容但是不删除stash
git stash apply stash@{0}
git stash drop stash@{0}
git diff # 默认比较暂存区和工作区
git diff commit_id # 比较commit_id和工作区
git diff HEAD #比较最新提交和工作区
git diff --cached(--staged) commit_id #比较commit_id和暂存区
git diff --cached # 比较最新提交和暂存区

git add

这是个多功能命令:可以用它开始跟踪新文件,或者把已跟踪的文件放到暂存区,还能用于合并时把有冲突的文件标记为已解决状态等。

git checkout -- <file> #将file的工作区的修改丢弃掉, 将它还原成上次提交时(如果已经暂存则还原成上次暂存时!!)的样子

你需要知道 git checkout -- [file] 是一个危险的命令,这很重要。 你对那个文件做的任何修改都会消失
你只是拷贝了另一个文件来覆盖它。 除非你确实清楚不想要那个文件了,否则不要使用这个命令。

git reset HEAD <file> #将file从暂存区移除

从表现来看,这个命令只是将file从暂存区移除,使得该文件处于unstaged状态,但是不会对工作区的file的内容产生影响

分支

posted @   jujubos  阅读(26)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示