项目中使用git的正确方式

主分支只用来pull request和pull
在本地创建一个新分支用于解决一个issue
完成后push到远程新建的相应分支
提起合并请求
合并成功后本地切换到主分支并pull
删除原来本地分支

公钥设置

su使用git时是使用自己的公钥,所以需要再设置su公钥,所以su和普通用户使用git时需要设置不同的公钥
ssh-keygen -t rsa -C “XXX”
cat ~/.ssh/id_rsa.pub

checkout指定远程分支

git checkout 分支名

切换分支

切换分支时需要先将本分支add和commit,再切换

更新远程分支

git fetch

修改本地仓库对应远程仓库

git remote -v //查看git对应的远程仓库地址
git remote rm origin //删除关联对应的远程仓库地址
git remote -v //查看是否删除成功,如果没有任何返回结果,表示OK
git remote add origin git@… //重新关联git远程仓库地址

合并分支

当两个人修改不同文件时:

本地修改好之后需要先commint一下以防丢失;然后再pull,最后再push。

当两人修改了同一文件且对方已经更新远程分支:

本地修改好之后同样需要commint以防丢失;然后再pull,会发现有冲突,需要在vscode中修改冲突,再commint一下;然后需要pull-合并冲突merge;最后提交。

放弃本地修改

还没有add: git checkout .
已经add没有commit: git reset HEAD .
已经commit: git reset (log) —hard git pull

回退某个文件

  1. 进入要回退的文件目录
  2. git log —oneline a.txt
  3. git reset 120a893 a.txt
  4. git commit -m ‘reset file xxxx’
  5. git checkout — xxxx

push代码到远程新分支

github:

  1. git branch xxx
  2. git push origin xxx:远端希望创建的分支

    gitee:

  3. git checkout 新分支

  4. git push orign 新分支

删除远程分支

gitee:
git push orign : 远程分支

修改很小的问题后希望直接提交覆盖(慎用)

git commint -am —no -edit —amend
git push -f