工作当中Git必须掌握的基本操作

工作当中Git的必须掌握的基本操作:

git的操作命令很多,接下来就来聊聊工作当中必须掌握的常用git命令

1,git clone
在工作当中常用拉取公司的远程仓库项目代码到本地,这里不建议在idea中直接导入git链接拉取,因为在idea中直接拉取的话,可能会导致在maven加载jar的时候,有的jar加载不进来(就是说的拉取的一样的代码自己本地跑不起来,而同事电脑上可以跑起来),这也是idea中拉取git项目存在的问题,这种情况是少见的,遇到这种情况,直接打开终端,通过敲 git clone命令的方式来拉取,再用idea打开更为稳妥。

2,git add ./
每次写完的需求功能代码之后,要将当前本地所完成的所有代码可以在terminal终端通过git add ./将代码由工作区加入到暂存区,这里也可以通过idea鼠标点击的方式操作,没问题

3,git commit -m "
将暂存区的代码提交到本地仓库,这里注意一下,在工作当中,我们一般写完一个需求就commit一次,每次需求都由对应的提交点可以查看,但是也可以写完好几个需求然后再一起提交,主要是后续操作可能导致提交文件不小心点击某个不清楚的idea操作,就将提交作废并回退到最初是的版本,这样你写的所有新的需求代码就一下找不到了,得费时间去找,但是每次写完一两个提交一次就可以直接找到提交点日志,直接恢复

4,git pull、git push
首先得保证本地项目代码在调试之后能够运行起来不报错,接着就可以通过 git push 将项目推到远程仓库去了,这里需要注意得,push之前要pull拉取远程仓库代码一下,保证本地仓库所有提交点和远程仓库得提交点一致,这样就尽量避免冲突,若是在pull得时候及时得发现文件冲突(这里得文件冲突指得是同事和我在同一个位置同一行写了代码才会有冲突),可以及时解决(和同事商量,用我代码还是他的,或者选择性合并或者两者代码都都要,git push 是完全覆盖仓库的项目。
.
关于git出现问题及解决链接:git push线上与本地版本冲突问题

5, git checkout
切换分支或者切换到某个版本号都是用这个命令,基本上都是进行分支的切换,工作当中比如在dev分支上开发,切换到sit分时上,就可以用这条指令,切换的时候需要注意当前分支所有改动的代码要先commit提交到本地才能切换!

6,git merge 分支名
合并分支操作,将其他分支上修复bug的代码合并到当前分支上,这里注意,需要先git checkout切换到当前分支上,然后再执行git merge合并其他分支才可以,再工作当中一个项目好些个分支,最基础的有dev开发分支,sit测试分支,aut生产分支等其它,
这里merge指的是合并不是全部覆盖,是局部覆盖:
举了例子:
dev上 A , B 两个模块, sit上 A,B,C三个模块,这里的模块可以理解成类、接口、文本、xml或者其它
此时dev合并到sit上,实际上是局部覆盖:sit还是A,B,C只是A,B更新了 , C并没有更新,这里注意一下

----------------------------------------------------------------以上是工作中最频繁使用操作指令--------------------------------------------------------------------

接下来就是在工作当中在操作git的时候出现问题时的基本用到的指令操作

1, git log --pretty=onelinegit reflog --pretty=oneline
这条指令就是能够查出所有提交次数版本号,但是有个问题就是比如我查看到历史版本的某一个提交版本号,想切换过去,这时候在用 git log --pretty=oneline切换过去之后就看不到当前版本之后提交的版本号了,这里可以使用git reflog --pretty=oneline 这条命令可以查看所有提交版本号(包括撤销的,删除操作的提交版本号都可以查询到然后切换过去,工作中个人用git reflog --pretty=oneline比较多,注意,使用git reflog --pretty=oneline这条命令推出按住 Q 键即可

2,git reset --hard xxx
当前代码错误, 撤销提交,撤销完之后,工作区当中会出现提交之前的代码,这里注意:撤销当前提交,工作区还是会有当前代码,可以撤销到当前代码提交点的上一次提交点版本号,这样子,工作区的错误代码都会消失,这里的撤销指的就是回滚,撤销提交点就是版本回滚的意思

有一场景:当前项目版本有错误,想回退到历史的某一个指定版本,然后将历史版本指定为当前版本。
这里可以直接使用git reset --hard xxx 回到到历史版本之后,每次记得需要pull一下
保持本地和远程仓库的项目提交点一致就行,接着直接push就可以将当前版本推到远程了,
或者不用pull直接强制推送:git push --force xxx ,
这个需要注意了,强制推送就将远程仓库的代码强制和本地保持一致,这样同事提交的代码在远程仓库也覆盖掉, 不建议使用!!

.
总结涉及的方面问题:覆盖问题、切换问题、撤销回退问题、提交点(存在及一致)问题,拉取问题

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值