详谈git 提交代码步骤,干货
利用命令行提交代码步骤
提交代码之前,需先从服务器上面拉取代码,以防覆盖别人代码。
1:拉取服务器代码
gitpull
2:查看当前工作目录树的工作修改状态
gitstatus
状态:
1:Untracked:未跟踪,此文件在文件夹中,但并没有加入到git库,不参与版本控制.通过gitadd状态变为Staged.
2:Modified:文件已修改,仅仅是修改,并没有进行其他的操作.
3:deleted:文件已删除,本地删除,服务器上还没有删除.
4:renamed:
3:将状态改变的代码提交至缓存
gitadd+文件
gitadd-u+路径:将修改过的被跟踪代码提交缓存
gitadd-A+路径:将修改过的未被跟踪的代码提交至缓存
例如:
gitadd-uvpaas-frontend/src/components
将vpaas-frontend/src/components目录下被跟踪的已修改过的代码提交到缓存中
gitadd-Avpaas-frontend/src/components
将vpaas-frontend/src/components目录下未被跟踪的已修改过的代码提交到缓存中
4:将代码提交到本地仓库中
gitcommit-m“注释部分refT3070”
注:
T3070:任务号
5:将代码推送到服务器
gitpush
问题
1:误将代码提交到缓存中(利用gitadd命令误将代码提交的缓存中)
解决办法:利用gitreset命令将撤回缓存中的代码。
2:误将代码提交到本地仓库(利用gitcommit命令误将代码提交到本地仓库)
解决办法:
gitreset—soft+版本号
回退到某个版本,只回退了commit的信息,不会改变已经修改过的代码。
gitreset—hard+版本号
彻底回退到某个版本,本地的代码也会改变上一个版本内容。
补充知识:使用TortoiseGit处理代码冲突
场景一
user0有新提交
user1没有pull->写新代码->pull->提示有冲突
解决办法一
->stashsave(把自己的代码隐藏存起来)->重新pull->stashpop(把存起来的隐藏的代码取回来)->代码文件会显示冲突->右键选择editconficts,解决后点击编辑页面的markasresolved->commit&push
解决办法二
(尽量少使用,这种方法的优点是在在原编辑器里处理冲突,代码逻辑看得更清楚一些)
->stashsave(把自己的代码隐藏存起来)->重新pull->stashpop(把存起来的隐藏的代码取回来)->代码文件会显示冲突->右键选择resolveconflict->打开文件解决冲突->commit&push
场景二
user0有新提交
user1没有pull->写新代码->commit&push->提示有冲突
解决办法一
->pull->代码文件会显示冲突->右键选择editconficts,解决后点击编辑页面的markasresolved->commit&push
以上这篇详谈git提交代码步骤,干货就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。