git常用命令
基本命令
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
 | 1、克隆代码   	git clone 地址 2、查看当前状态 	git status 	  状态分为 	 			"未跟踪" 	Untracked	 未跟踪的文件需要git add 添加之后,执行commit才会保存到版本库中。 			"已经修改"	modified	执行commit才会保存到版本库中。 			"已经删除"	deleted		本地删除文件不代表版本库中已经删除,需要执行git rm [文件名] 3、添加未跟踪文件 	git add [文件名]   	注意:不要git add . 这样会让eclipse生成的文件也add进去。 使用add * 		使用 `git add *.java, *.jsp` 4、提交代码 	git commit [文件名] -m "注释"			 5、从版本库拉代码 	git pull 6、代码提交到版本库 	git push 7、查看文件修改情况 		git diff [文件名]	如果不加文件名,会将所有已经修改的文件与版本库进行比较 8、回滚 	git reset [--hard] [--mixed] 	[--hard] 是强制抹除修改,未提交的修改会丢失。	git reset --hard #######慎重使用##### 	[--mixed] 是保存修改,相当于重新提交。 9、rebase 	git rebase [分支名]  //一般基于origin/master rebase 	即 git rebase origin/master 	本次提交后,从版本库拉去代码,别人也修改了。此时两者不在一条线上,rebase合并。 		出现冲突时, 		1、查看那些文件冲突: git status 		2、修改: 		3、将冲突文件修改后添加:git add 文件名 		4、git rebase --continue 10、图形界面工具 	gitk --all
 | 
修改撤回
| 1 2 3
 | git diff > tmp.diff			//修改内容暂存置tmp.diff git reset --hard			  //去除修改 rm -f tmp.diff				  //删除tmp.diff
 | 
分支
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
 | 1、查看本地分支 		git branch   		* dev   		  master   		*代表当前位于dev分支 2、查看远程分支 		git branch -r 		  origin/dev   		  origin/master   3、查看本地和远程分支 		git branch -a 4、创建分支 		git checkout -b new_branch   		注意,new_branch的代码来自于当前分支 5、切换分支 		git checkout another_branch   		和创建分支就差-b参数 6、push本地分支代码到远端服务器 		git push origin branch_name   		如果远端服务器没有该分支,将会自动创建 7、pull远端分支代码到本地对应分支 		git pull origin branch_name   8、删除本地分支,首先切换到别的分支,然后才能删除某个分支 		git checkout b   		git branch -d a   9、删除远程分支 		git push origin --delete branch_name   10、合并本地分支b4.5到master上: 		git checkout master 		git merger b4.5     将本地的b4.5分支代码合并到当前分支master中 		出现冲突: 			1、修改冲突文件 			2、git add              			3、git commit 11、合并远程分支,和前面的几乎一样, 		git merge origin/b   		远程分支b被合并到本地当前分支dev中了。 12、重命名分支: 		git branch -m <old_name> <new_name> (如果有同名会失败,改用 -M 可以强制覆盖)
 | 
标签
| 1 2 3 4 5 6 7 8 9 10 11
 | 1、查看本地标签: 		git tag 2、推送所有标签: 		git push --tags 3、删除本地标签: 		git tag -d 标签名 4、删除远程标签: 		git push origin --delete tag 标签名
 | 
文件追踪问题
| 1 2 3 4 5 6
 | 如果我们不小心将某个文件加入了 git 版本控制,但是突然又不想继续跟踪控制这个文件了,怎么办呢? 使用 git update-index 即可。 不想继续追踪某个文件 git update-index --assume-unchanged your_file_path 如果想再次继续跟踪某个文件 git update-index --no-assume-unchanged your_file_path
 | 
windows gitk 乱码
| 1 2 3 4
 | vi .gitconfig。 或者打开C:\Users\cage\.gitconfig文件 在文件末尾加上: [gui]     encoding = utf-8
 | 
某次提交合并到分支上
| 1 2 3 4 5 6 7 8 9
 | 将分支b2上的某次提交合并到分支b1上。 1、b2分支上:查看commit号 		git log 2、切换到b1分支 		git checkout b1 		git cherry-pick ef895d2b76610d9c41e901e09e4c483a132870e2 3、出现冲突,解决后使用 		git add filepath 		git cherry-pick --continue
 | 
git绑定两个远程仓库
http://www.cnblogs.com/beileixinqing/p/7493302.html