常见问题解决办法
git 只检出部分文件
http://www.cnblogs.com/liangzai-cool/p/5821138.html
https://my.oschina.net/u/3483147/blog/edit/905431
git分支
git 命令
git ls-files 查看版本控制下的文件
git rm remote 删除对指定文件的跟踪
当被跟踪的文件里面有不想跟踪的文件时,使用命令git rm删除文件。如:
git rm --cached readme1.txt 删除readme1.txt的跟踪,并保留在本地
commit 提交之后才会生效
撤销操作
git checkout . 撤销没有add 的所有修改
执行git reset HEAD filename
取消 commit 暂存
git reset HEAD 如果后面什么都不跟的话 就是上一次add 里面的全部撤销了
git reset HEAD XXX/XXX/XXX.Java 就是对某个文件进行撤销了
如果不小心 弄错了 git add后 , 又 git commit 了。
先使用
git log 查看节点
commit xxxxxxxxxxxxxxxxxxxxxxxxxx
Merge:
然后
git reset commit_id
用下面这个命令:git update-index --assume-unchanged logs/*.log
这样每次提交就不会出现logs下面的文件了
.gitignore 文件的用途,该文件只能作用于 Untracked Files,也就是那些从来没有被 Git 记录过的文件(自添加以后,从未 add 及 commit 过的文件)
撤销 commit 保留 修改
git reset --soft HEAD^
HEAD^的意思是上一个版本,也可以写成HEAD~1
如果你进行了2次commit,想都撤回,可以使用HEAD~2
--mixed
意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作
这个为默认参数,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。
--soft
不删除工作空间改动代码,撤销commit,不撤销git add .
--hard
删除工作空间改动代码,撤销commit,撤销git add .
注意完成这个操作后,就恢复到了上一次的commit状态。
commit注释写错了
git commit --amend
此时会进入默认vim编辑器,修改注释完毕后保存就好了。
git pull 更新代码
Git使用的一个经验就是: 不要用git pull,用git fetch和git merge代替它。
git pull的问题是它把过程的细节都隐藏了起来,以至于你不用去了解git中各种类型分支的区别和使用方法。当然,多数时候这是没问题的,但一旦代码有问题,你很难找到出错的地方
如果我想从远端的源仓库更新到本地的代码仓库,可以输入“git fetch origin”的命令
git fetch”命令执行完毕之后,还不会立即将下载的文件合并到你当前工作目录里
你需要执行一个“合并(merge)”操作。
git merge origin/master
如果你只是想看看本地分支和远程分支的差异,你可以使用下面的命令
git diff master origin/master
单独进行下载和合并是一个好的做法,你可以先看看下载的是什么,然后再决定是否和本地代码合并。而且分开来做,可以清晰的区别开本地分支和远程分支,
更新部分代码
git fetch 更新远程端代码 但是不合并
然后更新指定文件
git checkout origin/master -- path/to/file
常用 Git 命令清单 - 阮一峰的网络日志
http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html
廖雪峰的官方网站 git 教程
使用 GitHub, Jekyll 打造自己的免费独立博客