基本操作:
git init //初始化仓库
git remote -v //查看remote
git clone url //拉取代码,并且创建一个名为origin的remote
git remote add origin url //添加一个名为origin的remote
git add . //将文件从工作区提交到本地暂存区
git commit -m '注释' //将文件从暂存区提交到本地当前分支
git push -u origin master //将文件提交到remote的git库
git pull origin master //拉取
CONFLICT(冲突):
<<<<<<< HEAD //冲突开始
//自己的版本
=======
//他人的版本
>>>>>>> 7ee7fe9adf7f8be4e30d4229430f8a02192a7145 //冲突结束
(ps:当冲突被解决并提交仓库后,与之产生冲突的那个版本再次pull仓库后,代码会变成冲突解决后的版本,并且不会有冲突产生)
git log:
git log //git日志 倒叙
git log --pretty=oneline //格式化git日志,倒叙显示commit-id
git reflog //查看命令历史
git log --graph //可以看到分支合并图。
git reset:
git reset --hard HEAD //回退到某一个版本(HEAD 当前版本;HEAD^ 上一个版本;HEAD^^ 上两个版本;HEAD~100 上100个版本)
git reset --hard commit-id //回退到指定的版本
git reset HEAD <file> //撤销暂存区的修改,重新放回工作区
(ps:HEAD为版本指针,指向当前版本)
git checkout:
git checkout -- <file> //撤销工作区的修改。若文件保存在暂存区中,则还原到暂存区的版本;否则还原到当前分支的版本
branch(分支):
git branch //查看分支
git checkout -b <branchName> //创建分支并切换到新创建的分支下
git branch <branchName> //创建分支
git checkout <branchName> //切换到某个分支
git branch -d <branchName> //删除分支
git merge <branchName> //Fast forward模式合并分支 (指定分支合并到当前分支)
git merge --no-ff -m "注释" <branchName> //普通模式合并分支
ps:
1、分支新建后,若在分支上操作,但并未提交,此时若checkout其他分支,将会变成其他分子的修改,
其他分支提交后,原分支修改消失;
2、分支指针(例如:master、dev)指向提交;HEAD指针指向分支指针;
新建分支便是新建一个分支指针;切换分支便是切换HEAD指针的指向。
git init //初始化仓库
git remote -v //查看remote
git clone url //拉取代码,并且创建一个名为origin的remote
git remote add origin url //添加一个名为origin的remote
git add . //将文件从工作区提交到本地暂存区
git commit -m '注释' //将文件从暂存区提交到本地当前分支
git push -u origin master //将文件提交到remote的git库
git pull origin master //拉取
CONFLICT(冲突):
<<<<<<< HEAD //冲突开始
//自己的版本
=======
//他人的版本
>>>>>>> 7ee7fe9adf7f8be4e30d4229430f8a02192a7145 //冲突结束
(ps:当冲突被解决并提交仓库后,与之产生冲突的那个版本再次pull仓库后,代码会变成冲突解决后的版本,并且不会有冲突产生)
git log:
git log //git日志 倒叙
git log --pretty=oneline //格式化git日志,倒叙显示commit-id
git reflog //查看命令历史
git log --graph //可以看到分支合并图。
git reset:
git reset --hard HEAD //回退到某一个版本(HEAD 当前版本;HEAD^ 上一个版本;HEAD^^ 上两个版本;HEAD~100 上100个版本)
git reset --hard commit-id //回退到指定的版本
git reset HEAD <file> //撤销暂存区的修改,重新放回工作区
(ps:HEAD为版本指针,指向当前版本)
git checkout:
git checkout -- <file> //撤销工作区的修改。若文件保存在暂存区中,则还原到暂存区的版本;否则还原到当前分支的版本
branch(分支):
git branch //查看分支
git checkout -b <branchName> //创建分支并切换到新创建的分支下
git branch <branchName> //创建分支
git checkout <branchName> //切换到某个分支
git branch -d <branchName> //删除分支
git merge <branchName> //Fast forward模式合并分支 (指定分支合并到当前分支)
git merge --no-ff -m "注释" <branchName> //普通模式合并分支
ps:
1、分支新建后,若在分支上操作,但并未提交,此时若checkout其他分支,将会变成其他分子的修改,
其他分支提交后,原分支修改消失;
2、分支指针(例如:master、dev)指向提交;HEAD指针指向分支指针;
新建分支便是新建一个分支指针;切换分支便是切换HEAD指针的指向。