git提交代码——先暂存-再更新-然后上传代码

1、git基本操作

在项目中协同开发的时候,会遇到你更新代码之后开发阶段中,同事提交了新的代码,但是你本地代码还未更新同事最新提交的代码,如果直接提交,会产生冲突,这个时候需要先将本地最新的代码暂存起来,然后pull,之后再将暂存的代码释放,然后提交。
完整的流程:

  • 1.git stash save "save XXXX" (将本地代码回滚至上次提交的时候)
  • 2.git stash list (查看暂存的list)
  • 3.git pull (将远程代码拉下来更新为最新的代码)
  • 4.git stash pop (将第一步的回滚代码释放出来,相当于对本地代码和远程代码进行合并)
  • 5.git add . (正常的添加,提交推送代码到远程)
    1. git commit -m "注释"
  • 7.git push origin xx
  • 8 删除分支 git branch -d 分支名


    删除本地分支

    -d 是-delete的缩写
    强制删除本地分支 git branch -D 分支名
    -D 是 -delete -force的缩写

  • 9 删除远程分支 git push origin --delete 远程分支名
    该命令行会追踪删除分支


    删除远程分支

2、第一次使用git相关配置

(1)git 初始化

  • git init

(2)配置用户名和邮箱

  • git config --global user.name "XXX"
  • git config --global user.email "XXX"

(3)配置免密登录

  • ssh-keygen -t rsa -C “XX@qq.com” 三次回车

(4)查看完整秘钥内容

  • cat ~/.ssh/id_rsa.pub

(5)将密钥复制到git上面的ssh公钥里面去

image.png

(6)用如下命令查看是否设置远程密钥连接成功

3、git commit 回滚操作

git commit添加注释的时候发现注释信息写错了,想要回滚commit,然后再提交。

  • (1)git log 查看日志


    image.png
  • (2)git reset --soft HEAD^
    或者 git reset --soft commit后那一串^

    image.png

  • (3)git status 查看状态,已经变为添加未提交,之后重新commit,然后push就ok了。

4.git 第一次拉代码并切换分支操作

  • (1)初始化本地git仓库
    git init
  • (2)从git远程仓库克隆代码
    git clone xxx
  • (3) 创建并切换本地分支
    git checkout -b xx
  • (4)将远程地址添加为origin
    git remote add origin url地址
  • (5)拉取远程仓库分支代码到本地仓库
    git pull origin feature

4.1 补充操作

  • (1)查看当前分支
    git branch


    image.png
  • (2)本地合并两个不同的分支(当前在feature分支,将release分支合并过来)
    git merge release


    image.png
  • 注意:一般都是先在release分支git pull 之后切换会feature分支,将release分支合并到feature分支上
  • 为什么必须将release分支先合并到feature上是因为,release分支测试出的问题修改之后,不合到feature开发分支上时,会影响一些功能,例如登录在release分支加密,后端同步解密,但是feature分支不知道这个事情,就会出现无法登陆,所以先合并本地分支再进行开发。
  • (3)在开发过程中会遇到测试问题,需要切换会测试分支修改,这个步骤如下:
    • 1)暂存开发分支代码 git stash save "注释"
    • 2)切换到测试分支 git checkout release
    • 3) 修改代码,然后像平常一样add commit push
    • 4)测试分支修改提交后,切换会开发分支 git checkout feature
    • 5)合并分支要在没有修改过的分支上进行,所有,在开发分支上先合并 git merge release
    • 6)合并完成之后,在开发分支pop一下暂存的代码,就可以继续开发了git stash list--- git stash pop stash@{0}

5、其他分支合并到master分支

  • 1)修改主分支、本地提交,查看git提交历史,
  • 2)增加新分支,本地提交
  • 3)提交主分支到远程仓
  • 4)提交新分支到远程仓
  • 5)合并分支
# 切换到master分支
git checkout master
# 查看当前所有分支
git branch -a
# 查看master分支是否有需要提交的,先提交完成后,再合并分支
# 合并分支
git merge 分支名(如:feature)
# 合并过程中会有一个vim编辑框出现,让你填写合并的理由,可以不输入,直接‘:wq!’退出
# 本地合并完成后,推送到远程分支
git push 
# 至此合并完成

5.1 两个非master分支合并

  • 场景是将两个非master上的分支进行合并,并且不造成冲突。
    比如现在有两个分支feature,release。现在将feature合并到release
    首先及将feature分支上的代码clone下来,并且提交到新创建的分支back(这是为了不冲突)
    提交到back后,本地新建一个release分支并将其与远程release分支进行关联。
    切换到release分支。进行git merge back。
    成功后再将merge的代码push到远程release分支。
    这样就不用担心冲突了。

6、git打tag

git打标签--版本迭代

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容