clone git代码
-
git clone git地址 (克隆所有版本)
-
git clone -b 分支名 git地址 aa
git clone -b debug https://github.com/bcit-ci/CodeIgniter.git aa(克隆debug版本,aa是文件名)
添加远程地址 --git remote
-
git remote 不带参数,列出主机名
$ git remote origin
-
git remote -v 列出详细信息,在每一个名字后面列出其远程url
$ git remote -v origin XXXXX .git(fetch) origin XXXX.git (push)
-
git remote add 主机名 远程仓库地址 ------ 添加远程仓库
git remote add origin git@github.com:yyy/fff.git
-
git remote show 主机名 ----- 可以查看对应名称的远程主机的详细信息
git remote show origin
-
git remote rm 主机名 ------删除主机名
查看git 提交日志
-
git log
//最近3条更新日志,不带文件 git log -n 3 //最近3条更新日志,并且简单显示出所涉及的文件 git log -n 3 --stat //最近3条更新日志,更改的内容 git log -n 3 -p
新建分支
-
git branch qa ( 创建qa分支)
-
git checkout qa (切换到qa)
-
git checkout -b qa ( 创建并切换到qa分支)
-
git push origin qa:qa (本地分支发布到远程)
-
git checkout -b (本地分支名称) (远程分支名称)
git checkout -b qa origin/qa //建立本地分支qa 并与远程关联,建立前可以先git pull一下,防止最新建立的远程分支无法关联
删除分支
-
git push origin --delete Chapater6 可以删除远程分支Chapater6
-
git branch -d Chapater8 可以删除本地分支(在主分支中)
-
git branch (查看本地分支)
-
git branch -a (查看所有分支包括远程)
-
git branch -m 旧分支名 新分支名
git branch -m qa1 qa-test
合并分支
-
git merge --no-ff 分支(–no-ff 不使用fast-forward方式合并,保留分支的commit历史)
(确保本地仓库中qa已有最新 )git checkout qa git pull origin qa git checkout master //切换到master分支 git merge --no-ff qa //合并qa 分支到master git push origin master
回滚代码
-
git revert commit 这是回退某个版本
如有,1版本,2版本,3版本 2版本不想要了,但3需要, 则使用 git revert -n 2 ,会得到4版本(1版本+2版本) 参考:https://blog.csdn.net/yxlshk/article/details/79944535
-
(不要使用git reset ,原因见 :https://cloud.tencent.com/developer/article/1421605)
git revert -n leeedadadaddf //回滚到leeedadadaddf git push origin dev
(reset 适合自己的,多人开发使用revert)
-
git reset --hard leeedadadaddf
回滚后无法提交,可以强制push git push -f origin dev(-f 表示强制,注意最好复制一个分支防止出错) (不要使用,覆盖本地数据,修改的本地数据会丢失) 彻底回退到某个版本,本地的源码也会变为上一个版本的内容,撤销的commit中所包含的更改被冲掉;
-
回退到某个版本,只回退了commit的信息
-
git reset --soft leeedadadaddf //回滚到leeedadadaddf
-
git reset --soft HEAD^ // 回滚commit提交
-
避免提交时冲突
- commit 前先pull
- 出现冲突:
- git stash(把本地修改存储)
- git pull
- git stash pop
在解决冲突
远程仓库
-
查看远程仓库地址
git remote -v -
更换远程仓库地址
git remote set-url origin [新地址]
比如:git remote set-url origin git://xxxxx.git (git://xxxxx.git是新地址)
修改提交的日志
- 修改最后一次的
git commit --amend
# 弹出终端vim。修改完后,按esc,输入 :wq保存。
git push --force