一、安装与创建git
1、安装git
sudo apt -get install git
2、git设置
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
3、创建文件夹并进入该文件夹
$ mkdir learngit
$ cd learngit
4、git仓库创建
$ git init
5、文件添加到版本库
git add readme.txt
6、把文件提交到仓库
$ git commit -m "wrote a readme file"
二、克隆与推送
1、克隆命令
git clone git@192.168.0.114:caoyuan/yuan.git
2、推送命令
git push -u origin master 推送命令
3、修改命令
git add 文件名 //提交文件到暂存区
git commit -m //提交到工作区分支并记录备注
git diff HEAD -- readme.txt
每次修改,如果不add到暂存区,那就不会加入到commit中
三、常用命令
1、查看当前状态0结果
$ git status
2、查看文件做了哪些修改
$ git diff readme.txt
3、查看操作日志
A、普通查看
$ git log
B、列表查看
$ git log --pretty=oneline
C、查看记录你的每一次命令
$ git reflog
D、用带参数的git log也可以看到分支的合并情况:
$ git log --graph --pretty=oneline --abbrev-commit
4、版本退回
(1)、退回历史版本
$ git reset --hard HEAD^
HEAD //表示当前版本
HEAD^ 和
git reset // 上一个版本
HEAD^^ //上上一个版本
HEAD~100 //前100个版本
(2)、可以指定回到未来的某个版本
append GPL
的commit id
是3628164...
$ git reset --hard 3628164
(3)、丢弃工作区的修改
$ git checkout -- readme.txt
git checkout -- file
命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令,我们在后面的
分支管理中会再次遇到git checkout命令。
5、删除文件
$ rm test.txt
把文件恢复到最新版 本
$ git checkout -- test.txt
6、:创建SSH Key
$ ssh-keygen -t rsa -C "youremail@example.com"
Add SSH Key
7、本地仓库与远程仓库关联
$ git remote add origin git@github.com:michaelliao/learngit.git
8、添加到远程库
$ git push -u origin master
9、推送最新修改;
git push origin master
五、分支管理
1、创建分支
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
2、合并分支
$ git merge feature1
3、查看分支合并图
命令。
用git log --graph
$ git stash list
git stash apply
工作区是干净的,刚才的工作现场存到哪去了?用git stash list
命令看看:
工作现场还在,Git把stash内容存在某个地方了,
恢复有两个办法:
一是用git stash apply
恢复,但是恢复后,stash内容并不删除,你需要用git stash drop
来删除;
二是用git stash pop
,恢复的同时把stash内容也删了:
4、强行删除使用命令
$ git branch -D feature-vulcan
$ git branch -D <name>
六、多人协作
1、查看远程仓库的信息
$ git remote
2、详细查看远程仓库信息
$ git remote -v
3、推送分支
$ git push origin master
4、推送其它分支改分支名称
$ git push origin dev