git 命令记不住?用 IDEA 点鼠标总可以把?

概念

理解 3 个 git 的概念

  1. 工作区(working tree):在工作区做修改
  2. 暂存区(index/stage):存放已经修改准备提交的内容
  3. branch(commit):本地版本库
    git 命令记不住?用 IDEA 点鼠标总可以把?
    但是在使用 IDEA 中的 git 插件时情况与上面的不同,我们更多地是在处理“已经 add” 的文件与“已经 commit” 的文件之间的对比。
    未 add 的文件,我们永远不用去管,但是如果存在已 add 但是未 commit 的文件时会有些麻烦
  • 在 revert 时,被阻止,要求先将 2.txt 进行 commit 或者 stash (相当于是一个暂存区)

git 命令记不住?用 IDEA 点鼠标总可以把?
git 命令记不住?用 IDEA 点鼠标总可以把?

在 IDEA 中的使用

分支

创建分支

在选中的 log 上,如图创建,将回到历史状态
git 命令记不住?用 IDEA 点鼠标总可以把?
如果当前有修改没有提交,就会出现下图:Smart Checkout 解决冲突;Force Checkout 强制,当前修改都消失。

git 命令记不住?用 IDEA 点鼠标总可以把?

将新的分支推送到远程

git 命令记不住?用 IDEA 点鼠标总可以把?

删除分支

先切换到其它分支,再删除,本地和远程分支都在这里删除,删除没有先后顺序

git 命令记不住?用 IDEA 点鼠标总可以把?

Revert

对指定 log ”2“ 进行 “Revert Commit”,需要解决冲突
git 命令记不住?用 IDEA 点鼠标总可以把?
如果点击 cancle 不解决冲突,README.md 文件中会有目标版本 2 与当前版本 4 还有它的上一个版本 1 的冲突信息,但是没有目标版本 2 的信息
点击 Resolve 重新解决冲突
git 命令记不住?用 IDEA 点鼠标总可以把?
回退到版本 2 成功,生成一个新的提交
git 命令记不住?用 IDEA 点鼠标总可以把?

Reset

重置当前分支的指针到指定版本,并且选择如何处理当前工作区的内容。
git 命令记不住?用 IDEA 点鼠标总可以把?

1. Soft

最懒的,只移动个指针而已,当前工作区文本不做任何改变
git 命令记不住?用 IDEA 点鼠标总可以把?

2. Mixed

只有 2.txt 这个文件改变了
git 命令记不住?用 IDEA 点鼠标总可以把?

3. Hard

最干脆的,完全回到版本 3 ,一切都会改变
git 命令记不住?用 IDEA 点鼠标总可以把?

4. Keep

最聪明的方式,让我们解决冲突,并且把已经修改的内容都暂存起来
git 命令记不住?用 IDEA 点鼠标总可以把?