Git学习笔记(持续更新)

1.强制同步为远程的代码

远程仓库回退了commit的情况下(第2条描述之情况),强制同步远程的代码到本地

#更新远程最新的所有代码,但是不merge或者rebase

git fetch --all

#直接reset到master,也就把刚才fetch的更新了

git reset --hard origin/master

2.回退版本

#回退本地版本
git reset --hard <commit_id>
#强制提交到服务器

git push origin HEAD --force

3.新建分支和远程分支

#新建本地分支

git checkout -b branch_name

#推送到远程

git push origin branch_name

#设置跟踪(默认的git pull和git push,不然需要 git push origin branch_name来更新)

#如果第一次推送时,使用git push -u origin branch_name,则可省略这一步

#git push --set-upstream origin branch_name

git branch -u origin/branch_name

#协作者使用

#更新远程branch list

git fetch origin

#更新远程的新分支到本地,并建立本地分支

git checkout -b branch_name origin/branch_name

#删除远程分支(传送一个空指针到远程分支,相当于删除)

git push origin :branch_name

#删除远程分支之后,其他机器同步

git fetch -p

4.放弃当前工作区所有的修改

git checkout <filename>

git checkout .

5.设置当前branch自动提交的远程仓库

git branch --set-upstream-to=origin/<branch> master

6.保存密码,不用多次输入

git config --global credential.helper store

Linux/Unix下设置失效时间:

#默认15分钟

git config --global credential.helper cache 
git config --global credential.helper 'cache --timeout=3600'

Windows下设置

#参考http://*.com/questions/11693074/git-credential-cache-is-not-a-git-command
#没有配置成功,待测试
git config --global credential.helper wincred

7.二进制文件冲突的解决

git pull

#使用对方的文件覆盖自己的
git checkout --theirs YOUR_BINARY_FILE

#使用自己的文件覆盖对方的
// git checkout --ours YOUR_BINARY_FILE
git add YOUR_BINARY_FILE
git commit -m 'merged with the remote repos.'
git push

上一篇:php7.0.12 laravel 链接sqlserver数据库


下一篇:【转载】推荐5款超实用的.NET性能分析工具