1、 git与svn
SVN或者CVS是集中式的版本控制系统,各终端通过网络从中央服务器下载并将内容更新回中央服务器;Git是分布式版本控制系统,各终端均存放最新版本的,通过中间电脑建立共享。
2、 安装git
不同的操作系统有不同的安装包,Windows下,为了绕开复杂的环境配置,直接安装msysgit,只需要下载一个单独的exe安装程序,安装完成后,在开始菜单里找到“Git”->“Git Bash”
3、 建立版本库:gitinit
*******************************************************************************
4、 添加文件到暂存区:gitadd(可多次使用)
5、 提交本地仓库:gitcommit(只提交暂存区的内容,本地修改若要提交必须先git add)
git commit –m ……提交内容备注
*******************************************************************************
6、 查看仓库状态:gitstatus
7、 查看文件修改详情:gitdiff
*******************************************************************************
8、 查看仓库的操作日志:gitlog
9、 回退到上一个版本:gitreset --hard HEAD^
10、 回到xx版本:git reset –hard xx(版本号没必要写全)
11、 查看历史命令:git relog(回退到19世纪后,可以找到21世纪的id)
*******************************************************************************
12、 撤销:git checkout -- xxx.xx 将文件回退到暂存区
13、 删除:git rm xxx.xx (不要忘记commit)
*******************************************************************************
14、 查看分支:git branch
15、 创建分支:git branch <name>
16、 切换分支:git checkout <name>
17、 创建+切换分支:git checkout –b <name>
18、 合并某分支到当前分支:git merge <name>
19、 删除分支:git branch –d <name>
*******************************************************************************
20、 分支冲突时,手动解决,并重新add、commit
21、 查看分支的合并情况:git log --graph --pretty=oneline --abbrev-commit
22、 产生新节点,强制禁止快速合并:git merge –no-ff –m ‘xxxxx’ <name>
*******************************************************************************
23、 储存现场:git stash,恢复现场:git stash pop或git stash apply,git stash drop
24、 查看当前存储的现场:git stash list
25、 解决bug是要新建一个分支,必要时可存储现场后再切到bug分支,新增功能时要新建一个分支
*******************************************************************************
26、 要关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git;
关联后,使用命令git push -u origin master第一次推送master分支的所有内容;
此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改;
27、 从远程库克隆:git clone git@server-name:path/repo-name.git
28、 查看远程仓库克隆:git remote –v
29、 推送分支:git push origin master(主支,开发分支dev)
30、 从仓库下载代码:git pull
31、 手动处理冲突之后,提交代码:git commit –m merge