git是分布式版本控制系统,跟踪管理的是修改,而非文件
基本操作
1.安装git: sudo apt-get install git
安装后设置: git config --global user.name "Your Name"
git config --global user.email "email@example.com"
2.初始化目录为git仓库: git init
把文件添加到仓库:git add <file>
把文件提交到仓库:git commit -m <说明>
3.查看仓库当前的状态:git status
查看修改了哪些内容:git diff
4.查看提交历史:git log (--pretty=oneline)
查看命令历史:git reflog
回到上一版本:git reset --hard HEAD^
5.工作区和版本库间的关系
6.撤销修改
修改了但是未git add: git checkout -- <file>
git add了但未git commit: git reset HEAD <file>
7.删除文件:在目录中用rm命令删除文件后
若确实要删除文件:git rm <file>
若删错了,可恢复:git checkout -- <file>
远程仓库
1.关联远程库:git remote add origin <远程库地址>
(关联后远程库的名字就是origin)
2.推送:git push (-u) origin BRANCH
(-u第一次推送时加,将本地当前的分支推送到远程的BRANCH分支)
3.将远程BRANCH分支与本地整合:git pull origin BRANCH
(等同于git fetch和git merge)
- 如果出现fatal: refusing to merge unrelated histories错误,则是git版本问题,可改用git pull origin master - -allow-unrelated-histories(注意:allow前两个短线没有空格,因为连续输入两个短横线会变成一条长线,这坑爹的csdn。。。)
4.克隆:git clone <远程库地址>
(无需先进行关联)
5.查看远程仓库地址:git remote -v
分支管理
1.查看当前所有分支:git branch
(git branch -a
查看本地和远程的分支)
2.创建分支:git branch <name>
3.切换分支:git checkout <name>
4.创建+切换分支:git checkout -b <name>
5.合并某分支到当前分支:git merge <name>
6.删除分支:git branch -d <name>
7.分支冲突 (1)手动解决 (2)解决冲突后查看分支合并图:git log --graph (--pretty=oneline)
8.分支管理策略、Bug分支、Feature分支、多人协作(实际开发中用)
详细参照Git教程-廖雪峰的官方网站