1.创建
git init
git remote add origin ssh://git@git.sankuai.com/~yangsihao/test.git
git config --global user.name "杨思豪"
git config --global user.email "yangsihao@meituan.com"
2.版本回退
git reset --hard
3.分支
git checkout -b dev 创建切换分支
git branch 创建分支
git checkout dev 切换分支
git branch 查看分支
git merge dev 合并
git branch -d dev 删除
4.分支冲突
merge时出现对同一文件的修改,需要手动保持对原文件的修改一致才能合并
5.远程仓库
git remote add origin ssh 连接远程仓库
git checkout -b dev 切换到与远程仓库一致
git pull origin dev 将远程dev仓库内容拉回到本地
git push --set-upstream origin dev 将本地提交到远程dev
git push origin --delete dbg_lichen_star 删除远程分支
git push origin dbg_lichen_star:dbg_lichen_star 推送本地dbg_lichen_star分支到远程dbg_lichen_star分支
git push可能会失败,可能是另一个人也在同一个版本上对同一个文件进行了修改,需要先pull下来,merge冲突,将冲突解决了,再merge,在push
6.log
git log
git reflog
对与log的清理, 拉取远程的最后提交的代码
git fetch origin ysh:temp
git reset version-id
git add . / git commit -m "这次功能"
git push -f
7.amend
git add ant.txt
git commit --amend --no-edit
或者
git commit --amend -m "add new file"
对于行一次commit小改动,少一次commit log记录
8.git fetch 和git pull 的差别
git fetch 相当于是从远程获取最新到本地,不会自动merge,如下指令
git fetch orgin master //将远程仓库的master分支下载到本地当前branch中
也可以用以下指令:
git fetch origin master:tmp //从远程仓库master分支获取最新,在本地建立tmp分支
git diff tmp //將當前分支和tmp進行對比
git merge tmp //合并tmp分支到当前分支
git pull:相当于是从远程获取最新版本并merge到本地
git pull origin master