git常见的操做

1.介绍一下git

通常多人协做的项目都有一个remote公共仓库,一个origin私人仓库,一个本地仓库。
下图是我的根据公司中git的使用,总结三个库与本地代码的关系图。git

  • 通常公司中的git协做都是有一个公共仓库,全部协做者fork一份到本身的私人仓库;而后git clone私人仓库的代码到本地仓库,后同步到idea中。
  • 改动以后,可选择改动的文件git add到stage暂存区,若添加错了,可git reset;若没问题,下一步是git commit -m到本地仓库中,而后在git push到私人仓库中。
  • 最后一步是merge到公共仓库,通常公司都须要用本身的分支而不能用master分支进行push或者merge操做,由于多人协做的状况下,若是你们都用master就乱了;推荐按功能模块建立不一样的分支名。

2.git中常见的状况

1.初次clone私人仓库后,需pull远程公共仓库

git branch -a
git fetch --all
git remote -v
git remote add us XXX.git
git remote -v 查看本地分支的全部远程仓库
git branch -a
git pull us master
复制代码

2.代码修改以后Git提交

git status
git add XXX1 XXX2
git status
git commit -m "commit msg"
git push -u origin mastername 最好指定分支
then take a merge request to remote us
复制代码

3.本地代码不想提交,可是要拉去远程公共仓库最新代码

git status
git stash list
git stash save "save msg" 缓存于堆栈
git status
git checkout master
git pull us master
git checkout branch1
git rebase master 将本身的commit放在master的commit后
git push origin XXX push到私人仓库的XXX分支
git stash pop 改动的stash pop回来;
复制代码

3.已经push到私人仓库两次,如何撤回push

add到stage后撤回:
git add xxx xxx 若想撤回
git reset HEAD xxx xxx
git status

commit到仓库以后撤回:
git commit -m "commit msg"
git reset --soft HEAD^
若commit2次或屡次
git reset --soft HEAD~2

push到私人仓库撤回:
git reset HEAD~2
git status
git push 会报错
git push origin qcs_bucket --force
git status
复制代码

4.常见的git

git checkout -b newBranchName
git status
git log
git diff
git stash list
git stash pop
git config --global --edit 修改配置文件 hostname等;
复制代码

3.总结

git 的使用大部分须要本身真正碰到这样的问题,去解决了而后做总结,可能会更深入吧,反正之前就开始用的,可是由于不涉及团队协做,每次commit都是整个项目一块儿push,而后每次都须要解决冲突,就算对了,也不知道为何是对的。缓存

相关文章
相关标签/搜索