码迷,mamicode.com
首页 > 其他好文 > 详细

git使用的常见命令汇总

时间:2020-01-28 09:12:48      阅读:59      评论:0      收藏:0      [点我收藏+]

标签:vim编辑   改名   force   origin   分布式版本控制   ast   就会   添加   init   

git的简单介绍

git是分布式版本控制工具

git 的基本操作指令

git init

初始化git仓库

git add 文件名

git add .

把文件 添加到 git 暂存区中

git status

查看git 的状态

出现红色说明有文件,修改了但还没提交到暂存区

git diff 查看修改了哪些文件 增加了哪些行,删除了那些行

git diff --cached 查看修改了那些文件

查看的是修改是暂存区的修改和修改了但未暂存之间的对比

git commit -m “文字描述” 将暂存区的数据提交到本地仓库

git rm -f 强制删除 暂存区中的 文件 (会把文件从磁盘一并删除) 有数据,但更改的数据还没放到本地仓库

git rm 文件名 删除文件(会把文件从磁盘一并删除) 暂存区数据已经提交到本地仓库

git rm --cached   将数据从仓库中删除(或)暂存区中删除,但不会删除磁盘的文件

cached 缓存

git log 查看 git 的 版本提交信息

git mv README.md README

对文件进行改名操作

取消工作区做的修改,让工作区的文件和暂存区的文件内容一样,消除git diff的差异

git checkout -- CONTRIBUTING.md

将已提交到暂存区的文件撤销为未暂存状态

git reset HEAD CONTRIBUTING.md

使用git status 就可以查看下面操作的可选命令

git reset --hard commit号

返回上一个提交的版本

分支

git checkout -b dev

创建并切换dev分支

git branch dev 创建dev分支

git branch

查看当前所属分支

git checkout master 切换到master分支

git merge dev 合并分支

合并后就有dev分支上提交的版本信息

git branch -d dev

删除dev分支

合并冲突问题

先创建一个dev分支 提交

然后再切换回master分支,再提交

且2个提交的分支都修改了同一个文件

然后把dev分支合并到master分支上,产生冲突

分支切过来是看不到的

git push origin 分支名 当分支推送到远程

得推送工作分支上去才行

推送主分支不行的

git push origin 分支名 --force 强推 嘿嘿

git clone “仓库地址” 把仓库下载到本地

跟踪远程分支 跟踪完 直接 git push 就可以了

git pull origin 分支名

把远程的分支拉取到本地

拉下来后,如果远程分支已经做了修改,它就会自动同步远程的代码,并提交一次commit 向本地仓库

git branch --set-upstream-to=origin/smart smart 本地的smart分支跟踪远程的smart分支

git 撤销提交的 commit 操作

写完代码后,我们一般这样

git add . //添加所有文件

git commit -m "本功能全部完成"

执行完commit后,想撤回commit,怎么办?

这样凉拌:

git reset --soft HEAD^

这样就成功的撤销了你的commit

注意,仅仅是撤回commit操作,您写的代码仍然保留。

说一下个人理解:
HEAD^的意思是上一个版本,也可以写成HEAD~1

如果你进行了2次commit,想都撤回,可以使用HEAD~2

至于这几个参数:
--mixed
意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作
这个为默认参数,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。

--soft
不删除工作空间改动代码,撤销commit,不撤销git add .

--hard
删除工作空间改动代码,撤销commit,撤销git add .

注意完成这个操作后,就恢复到了上一次的commit状态。

顺便说一下,如果commit注释写错了,只是想改一下注释,只需要:
git commit --amend

此时会进入默认vim编辑器,修改注释完毕后保存就好了

git使用的常见命令汇总

标签:vim编辑   改名   force   origin   分布式版本控制   ast   就会   添加   init   

原文地址:https://www.cnblogs.com/myblog-tao/p/12237333.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!