一些在项目开发中常用的命令,整理收藏用。

基本操作

初始化版本控制

git init

纳入暂存区

git add .

查看工作区,暂存区状态

git status

提交到版本库

git commit -m 说明

撤销暂存区

git reset HEAD 文件名

查看日志

git log
// 更简单的日志展示
git log --oneline
// 查看版本的路线记录
git log --oneline --graph

撤销commit

git reset --soft HEAD^

撤销修改(未提交commit),回退到上一次加入暂存区的文件内容

git checkout -- .\index2.html

回退到上一个版本提交commit

git reset --hard HEAD^
一个 ^ 表示上个,两个 ^ 表示上上个。

回退到指定版本commit

git reset --hard 6481188d
后面的数字为日志编号,一般复制前几位即可。git log

指定文件回退版本

git checkout 65c2421e642445a -- index2.html

推送代码带远程仓库

git push origin master

如何回退到和远程版本一样

有时候,当发生错误修改需要放弃全部修改时,可以以远程分支作为回退点退回到与远程分支一样的地方
git reset --hard origin/master 

标签管理

如果你达到一个重要的阶段,并希望永远记住那个特别的提交快照,你可以使用 git tag 给它打上标签。关于git标签有什么用,在菜鸟教程最下面有详细的讨论。

每次commit之后会生成一个日志码,如果要退回到某个特定版本,需要找到这个码比较麻烦,可以使用tag加一个版本的标签,需要退回到该版本时,直接使用这个版本的tag标签就行,方便退回到特定的版本
git tag v1.0

标签默认添加到最新一次commit上,也可以指定到哪个commit

git tag v1.0 609f4fd2

// 查看标签
git tag
// 删除标签
git tag -d v1.0
// 推送标签
git push origin 标签名

分支管理

创建分支

git branch dev
// 创建并切换
git checkout -b dev
// 创建并切换并和远端分支关联
git checkout -b test orgin/test

查看分支列表

* 代表当前所在的分支
git branch

切换分支

git checkout dev

删除分支(不能删除当前所在的分支)

git checkout -d test

合并分支 -> 切换到想要合并的分支 git checkout master -> 合并指定的分支过来

git merge test
表示将 test分支的代码 合并到 当前所在分支

如何解决合并分支出现的冲突

当一个文件两个分支都发生修改,合并的话就会产生冲突。

忽略其他分支,保留原有内容,下次再对冲突的内容进行决定

git merge --abort

解决冲突的内容,与同事讨论后保留哪个结果,然后执行命令。

查看远程分支

// 先拉取更新一下远程仓库
git fetch
// 查看远程分支
git branch -av

删除远程分支

git push origin --delete 分支名

提交本地test分支作为远程的master分支

git push origin test:master

提交本地test分支作为远程的test分支

git push origin test:test

合并另外一个开发者提交的代码,解决推送冲突。

git merge origin/dev
// 修改里面的内容,退出保存,重新 git push 即可

Last modification:December 7, 2020
如果觉得我的文章对你有用,请随意赞赏