介绍
GIT与Idea结合开发,可以节省程序员大量的时间。
上传代码
这里只增加一个.gitignore文件和README.md文件
命令行提交
IDEA提交
点击右上角绿色对勾
弹出对话框
左上方的框显示了改动过的文件(后面会演示到)和新增的文件,改动和内容和新增的内容都会在下方显示,并且改动过的文件会对比显示(非常方便)
要保存哪些文件选中即可(类似于 git add filename)
Commit Message框内填写了commit的内容(类似于 git commit -m "项目初始化")
弹出commit的对话框,commit按钮有个下拉选项,可以直接commit and push,也可以配置按钮
在项目中任意地方右键->git->Repository->Push,可以发现push的快捷键是Ctrl+Shift+K,这个快捷键会和输入法冲突,所以我一般会把push命令设置成tool bar,用起来超级方便
步骤如下
点击File-Settings,找到如图所示位置,我要在commit按钮后面加push,选中commit,点击“Add After”,
弹出对话框,在Version Control Systems目录下,点击图中所示位置,
可以看到Tool Bar上有了push按钮
点击push按钮即可,可以修改remote和branch,点击push即可,idea在下方对比显示,并将修改的内容用另一个种背景颜色显示,非常方便看到我们修改了哪些内容
拉取代码
当我们想拉取远程仓库最新的代码时
命令行拉取
git pull origin master
IDEA拉取
点击上面的【Pull】按钮,弹出确认框,点击OK,
默认选项,点击OK即可,可以选中不再显示这个对话框。这样上传和拉取就不用敲命令,3个按钮搞定一切,上图中的按钮含义:
Update Type 选择
Merge:结果与运行 git fetch ; git merge 或 结果相同 git pull。
Rebase:结果与运行 git fetch ; git rebase 或 结果相同 git pull --rebase。
Branch Default:此选项用于选择应用分支的默认命令。default 命令 branch. 在 .git/config 配置文件的部分中 指定 。
使用场景:
Merge:因为成员的代码开发工作已经完成了,也不需要再保留这个分支了,所以我们可以把这个成员分支 merge 到主分支上,当然冲突在所难免,手工解决的工作肯定逃不掉,但是利大于弊不是吗。merge 以后,分支就不存在了,但是在 Git 的所有分支历史中还能看到身影。
Rebase:如果修改了某个公用代码的 BUG,这个时候就应该是把所有的 OEM 版本分支 rebase 到这个修复 BUG 的分支上来,在 rebase 过程中,Git 会要你手动解决代码上的冲突,你需要做的就是把修复 BUG 的代码放到目标分支代码里面去。rebase 的结果是:所有的分支依然存在。
比如说自己在自己分支开发了一段时间,之后另外的同事开发的功能正式上线到 master 分支了,那么我可以在当前的分支下 rebase 一下 master 分支,这样我这个分支的几个 commits 相对于 master 还是处于最顶端的,也就是说 rebase 主要用来跟上游同步,同时把自己的修改顶到最上面
merge 结果能够体现出时间线,但是 rebase 会打乱时间线。
而 rebase 看起来简洁,但是 merge 看起来不太简洁。
最终结果是都把代码合起来了,所以具体怎么使用这两个命令看项目需要。
版本回退
点击钟表的那个按钮,下方会显示所有的提交记录,版本回退有如下2种方式,用revert命令,
如果对版本回退不太清楚的,右键选中要回退的版本,点击【Get】按钮
切换分支,tag,commit
切换本地分支和远程分支,直接点就行,想切换tag或者某次commit,点Checkout Tag or Revision那个按钮
领取专属 10元无门槛券
私享最新 技术干货