Git 命令总结

git --verson 查看git版本

git --help 调出git的帮助文档

git  +命令  --help 查看某个具体命令的帮助文档

git  init 初始化一个仓库

git add 讲文件添加到暂存区

git commit -m  "文件名字" 将暂存区里的文件提交到本地仓库

git remote  用于管理远程仓库

远程仓库地址  git remote add origin https://github.com/sglyz/mybatis_demo.git

git push -u origin master  将变更推送到远程仓库

git push -u origin master  往名字为origin的仓库的master分支上提交变更

git fetch 拉取远程仓库的变更到本地仓库

git merge origin/master  将远程的变更,合并到本地仓库的master分支

git pull  --相当于(先执行 git fetch 然后执行 git merge origin/master,我们最好先对比后再合并以防出错)
------------------------------------
git status 获取文件的状态

Untracked 新建状态

(执行git add  文件名字命令行回到 staged状态)

staged  
(执行 git commit -m 命令后 会到 Unmodified状态)

执行 git rm --cache 文件名字  命令后 文件又会回到 Untracked 新建状态

git rm 如果不加--cache 会删除 工作区里的文件,并且提交到暂存区

git checkout  直接加文件名字  是从暂存区将文件恢复到工作区,如果工作区已经有该文件,则会直接覆盖。

加了【分支名】+文件名字 则表示从分支名为所写的分支名中拉取文件,并覆盖工作区的文件。(一定要注意  git checkout master 加文件名字)

总结一下

新建文件---Untracked 状态

使用add命令将新建的文件加入到暂存区----》statged状态

使用commit 命令 将暂存区的文件提交到本地仓库----》Unmodified

如果对Unmodified状态的文件进行修改---》modified

如果对Unmodified状态的文件进行remove 操作---》Untracked

----------------------------------
1.什么是分支?
    软件项目中启动一套单独的开发线的方法
2.为什么使用git
      1.可以很好的避免版本兼容发开的问题,避免不同版本的相互兼容
      2.封装一个开发阶段
      3.解决bug的时候新建分支,用于对该bug的研究
3.git中跟分支相关的命令
    git branch 加 分支名   可以添加分支

    git branch -d 分支名  删除指定分支  不能删除当前在的分支
    
    git branch 不加任何参数,列出所有的分支,分支前面有*号
    
    git branch -m 旧的分支名 新的分支名   给分支重新命名

    git checkout 分支名字 切换分支

    如果在分支上面对文件进行修改之后,没有commit 就切换到另外一个分支b,这个时候会报错,因为没有commit 的文件在切换分支之后会不覆盖,所以git 包裹提示。

    git checkout -f 分支名  强制切换到到分支,如果当前有未提交的变更,会直接丢弃,要小心使用强制切换。
---------------------------------------------
git log  命令信息的具体含义  

按 字母键 q 退出git log  继续输入命令

commit fb16b6574a10725bb234cd18cbf6c937fb8381a1   --SHA-1校验  commit id
Author: Administrator <sglgyz@163.com>     作者跟邮箱概要信息
Date:   Mon Aug 10 14:53:34 2020 +0800        提交的时间

git log -数字  标识查看最近几次的提交

git log -p -2 显示最近两次提交的不同点

git log --author 查看具体某个作者的提交

git log --graph 以一个简单的线串联起来整个提交历史
-------------------------------------------
diff -->difference 的缩写,用于比较差异

使用场景:
    1.解决冲突
    2.制定补丁
git diff 不加任何参数 用于比较当前工作区跟暂存区的差异

git diff --cached 或者 --staged  用于比较当前工作区跟暂存区的差异

git diff 分支名 查看当前分支跟指定的分支的差异

git diff 分支名1 分支名2 查看两个指定分支的(已提交的)差异

git diff commitid1 commitid2 用于列出两个历史提交的差异

diff --git a/file1 b/file1   两个版本
index 82fc5d8..b0b5502 100644   
--- a/file1         标识变更前的文件
+++ b/file1      标识当前的文件
@@ -1,3 +1,5 @@   在源文件第一行开始的三行, 和目标文件第一行开始的五行不同。
 abc
 aaaaaa
 aabcccc
+1111111111
+aa1

git log --oneline 查看提交历史 以精简模式显示

git reset HEAD 加文件名字 将缓存区的文件移除掉

git reset HEAD^ 去掉上一次的提交

git reset --soft HEAD^ 修改上一次提交的信息  commit -m"修改的内容"  暂存区还是有的

 git merge 文件名   是将当前分支与指定分支进行合并

git diff --name-only --diff-filter=U  用于查看产生冲突的文件

git tag 不加任何参数 表示显示标签(按字母序) 非按时间
git tag 标签名 默认是给最近一次提交打上标签
git tag 标签名 commitId 给响应的提交打上标签
git show 标签名 显示该标签相关的那次提价的相关信息
git tag -d 标签名 删除该标签
git push 远程分支名 标签名 把某个标签(必须是本地已存在的,否则推动失败) 推送到远程分支
删除远程标签的步骤
删除本地标签 git tag -d 标签名
在删除远程的 git push origin :refs/tags/标签名


git push  将本地更改推送到远程

git rm -rf --cached 文件夹名    将文件夹里的文件递归从暂缓区中移除

git rm --cached 文件名  将单个文件从暂缓区中移除


git --verson 查看git版本

git --help 调出git的帮助文档

git  +命令  --help 查看某个具体命令的帮助文档

git  init 初始化一个仓库

git add 讲文件添加到暂存区

git commit -m  "文件名字" 将暂存区里的文件提交到本地仓库

git remote  用于管理远程仓库

远程仓库地址  git remote add origin https://github.com/sglyz/mybatis_demo.git

git push -u origin master  将变更推送到远程仓库

git push -u origin master  往名字为origin的仓库的master分支上提交变更

git fetch 拉取远程仓库的变更到本地仓库

git merge origin/master  将远程的变更,合并到本地仓库的master分支

git pull  --相当于(先执行 git fetch 然后执行 git merge origin/master,我们最好先对比后再合并以防出错)
------------------------------------
git status 获取文件的状态

Untracked 新建状态

(执行git add  文件名字命令行回到 staged状态)

staged  
(执行 git commit -m 命令后 会到 Unmodified状态)

执行 git rm --cache 文件名字  命令后 文件又会回到 Untracked 新建状态

git rm 如果不加--cache 会删除 工作区里的文件,并且提交到暂存区

git checkout  直接加文件名字  是从暂存区将文件恢复到工作区,如果工作区已经有该文件,则会直接覆盖。

加了【分支名】+文件名字 则表示从分支名为所写的分支名中拉取文件,并覆盖工作区的文件。(一定要注意  git checkout master 加文件名字)

总结一下

新建文件---Untracked 状态

使用add命令将新建的文件加入到暂存区----》statged状态

使用commit 命令 将暂存区的文件提交到本地仓库----》Unmodified

如果对Unmodified状态的文件进行修改---》modified

如果对Unmodified状态的文件进行remove 操作---》Untracked

----------------------------------
1.什么是分支?
    软件项目中启动一套单独的开发线的方法
2.为什么使用git
      1.可以很好的避免版本兼容发开的问题,避免不同版本的相互兼容
      2.封装一个开发阶段
      3.解决bug的时候新建分支,用于对该bug的研究
3.git中跟分支相关的命令
    git branch 加 分支名   可以添加分支

    git branch -d 分支名  删除指定分支  不能删除当前在的分支
    
    git branch 不加任何参数,列出所有的分支,分支前面有*号
    
    git branch -m 旧的分支名 新的分支名   给分支重新命名

    git checkout 分支名字 切换分支

    如果在分支上面对文件进行修改之后,没有commit 就切换到另外一个分支b,这个时候会报错,因为没有commit 的文件在切换分支之后会不覆盖,所以git 包裹提示。

    git checkout -f 分支名  强制切换到到分支,如果当前有未提交的变更,会直接丢弃,要小心使用强制切换。
---------------------------------------------
git log  命令信息的具体含义  

按 字母键 q 退出git log  继续输入命令

commit fb16b6574a10725bb234cd18cbf6c937fb8381a1   --SHA-1校验  commit id
Author: Administrator <sglgyz@163.com>     作者跟邮箱概要信息
Date:   Mon Aug 10 14:53:34 2020 +0800        提交的时间

git log -数字  标识查看最近几次的提交

git log -p -2 显示最近两次提交的不同点

git log --author 查看具体某个作者的提交

git log --graph 以一个简单的线串联起来整个提交历史
-------------------------------------------
diff -->difference 的缩写,用于比较差异

使用场景:
    1.解决冲突
    2.制定补丁
git diff 不加任何参数 用于比较当前工作区跟暂存区的差异

git diff --cached 或者 --staged  用于比较当前工作区跟暂存区的差异

git diff 分支名 查看当前分支跟指定的分支的差异

git diff 分支名1 分支名2 查看两个指定分支的(已提交的)差异

git diff commitid1 commitid2 用于列出两个历史提交的差异

diff --git a/file1 b/file1   两个版本
index 82fc5d8..b0b5502 100644   
--- a/file1         标识变更前的文件
+++ b/file1      标识当前的文件
@@ -1,3 +1,5 @@   在源文件第一行开始的三行, 和目标文件第一行开始的五行不同。
 abc
 aaaaaa
 aabcccc
+1111111111
+aa1

git log --oneline 查看提交历史 以精简模式显示

git reset HEAD 加文件名字 将缓存区的文件移除掉

git reset HEAD^ 去掉上一次的提交

git reset --soft HEAD^ 修改上一次提交的信息  commit -m"修改的内容"  暂存区还是有的

 git merge 文件名   是将当前分支与指定分支进行合并

git diff --name-only --diff-filter=U  用于查看产生冲突的文件

git tag 不加任何参数 表示显示标签(按字母序) 非按时间
git tag 标签名 默认是给最近一次提交打上标签
git tag 标签名 commitId 给响应的提交打上标签
git show 标签名 显示该标签相关的那次提价的相关信息
git tag -d 标签名 删除该标签
git push 远程分支名 标签名 把某个标签(必须是本地已存在的,否则推动失败) 推送到远程分支
删除远程标签的步骤
删除本地标签 git tag -d 标签名
在删除远程的 git push origin :refs/tags/标签名


git push  将本地更改推送到远程

git rm -rf --cached 文件夹名    将文件夹里的文件递归从暂缓区中移除

git rm --cached 文件名  将单个文件从暂缓区中移除


gitignore 文件配置

为什么要使用.gitignore 文件
大量与项目无关的文件全推到远程仓库上,同步的时候会非常慢,且跟编辑器相关的一些配置推上去之后,别
人更新也会受其影响。所以,我们使用该文件,对不必要的文件进行忽略,使其不被git追踪
一把情况下,.gitignore文件,在项目一开始创建的时候就创建,并推送到远程服务器上。这样大家初次同步
项目的时候,就是用到该文件,避免以后,团队成员把与项目无关的文件,传到远程服务器上

.log 表示忽略项目中所有以.log结尾的文件 123?.log 表示忽略项目中所有以123加任意字符的文件 /error.log
表示忽略项目中根目录中的error.log 这个文件 src/main/test/ 表示忽略/src/main/test/目录下的所有文件 
*.class **/java/ 匹配所有java目录下的所有文件 !/error.log 表示在之前的匹配规则下,被命中的文件,可以使
用!对前面的规则进行否定
对于已经提交到远程或本地仓库的文件,.gitignore配置之后不会生效。我们必须先删除本地暂存区里的文
件,之后在加上.gitignore 文件,最后再把变更提交到远程仓库上。
git rm --cached 文件名 从暂存区删除某个文件
git rm -rf --cached 文件夹 表示递归删除暂存区该文件夹的所有东西

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值