git 命令

大佬地址:https://www.cnblogs.com/lianghe01/p/5846525.html

第一章 概念

  1. 本地–工作区
  2. git add 提交到暂存区
  3. git commit -m ‘lalal’ 提交到本地分支(版本库)
  4. git push origin master 推送到远程分支
  5. 在git中,用HEAD表示当前版本,也就是最新提交的一次记录,上一个版本是HEAD^,上100个版本HEAD~100
本地工作区 暂存区 本地分支master 远程分支origin/mast git add test.txt git commit -m test git push origin master 本地工作区 暂存区 本地分支master 远程分支origin/mast

第二章 状态内容查看

2.1 查看git本地状态

$ git status
	On branch master
	Your branch is up-to-date with 'origin/master'.
	Changes to be committed:
  	(use "git reset HEAD <file>..." to unstage)

        modified:   "修改已经被提交到暂存区的文件名"

	Changes not staged for commit: # 没有提交到暂存区的修改
  	(use "git add <file>..." to update what will be committed) # git add添加
  	(use "git checkout -- <file>..." to discard changes in working directory) # git checkout撤销修改
        modified:  "修改没有提交到暂存区的文件名"

	Untracked files:
  	(use "git add <file>..." to include in what will be committed)
        "./新增加的文件名"

2.2 查看暂存区内容信息

$ git ls-files  # 查看暂存区中文件信息
# 参数如下:
# --cache\-c    显示暂存区的文件
# --deleted\-d  显示删除的文件
# --modified\-m 显示修改过的文件
# --stage\-s    显示当前文件夹下文件名以及文件对应点blog对象,进而我们可以获取暂存区中对应文件里面的内容

2.3 查看文件内容

# git cat-file -p  commitId # 查看提交详情,commitId 对应每一次提交的唯一标识 
$ git log -1 # commit提交标识e3fd9b793e0cdcdb4b45d97b0bdfceae835b7517
$ git cat-file -p e3fd9b793e0cdcdb4b45d97b0bdfceae835b7517 # commit 标识
$ git cat-file -p 9481de6eab16f963c6b3a6fb371820d419522d3b # tree 标识
$ git cat-file -p 7937c68fbcf7c484f2d5ce7801944416eedf0d2c # 参数blob标识,返回内容

在这里插入图片描述

2.4 查看历史提交文件差异

$ git show commit_id# 查看历史提交文件差异内容

第三章 差异查看与撤销

现在有一个文件test.txt,
远程库上值为 3,本地修改为 2 提交到暂存区,不做其他操作,修改本地值为 1

3.1 本地各个阶段差异查看

# 查看差异
$ git diff test.txt # 本地文件与暂存区的文件差异
  - 2 # 2消失
  + 1 # 1增加

$ git diff --cached test.txt # 查看暂存区与本地分支的文件差异
  - 3 # 3消失
  + 2 # 2增加

$ git diff HEAD -- test.txt # 查看工作区与本地分支的差异
  - 3 # 3消失
  + 1 # 1增加
  
$ git diff master origin/master  # 查看本地分支与远程分支的文件差异
# 啥都没有 因为没提交

$ git diff my_branch master  # 查看本地分支my_branch与本地分支master的文件差异

$ git diff my_branch master >>f:/test.diff   # 将差异输出到文件,以便观看

# 啥都没有 因为没提交

3.2 本地各个阶段差异撤销

以上述所说为情景

3.2.1 将本地修改恢复到跟暂存区一致

$ git checkout -- test.txt # 丢弃工作区的修改  test.txt里变为2 ,即工作区与暂存区保持一致
# 如果此修改未提交到暂存区,此操作会丢弃工作区修改,保持跟版本库中一致

3.2.2 add后,将本地修改恢复跟版本库中一致

$ git reset HEAD -- test.txt # 工作区test.txt里仍为1 ,暂存区文件退回,可以通过git status 查看
$ git checkout -- test.txt   # 工作区test.txt里变为3,一切回到未add之前
$ git checkout -- *  # 全部回退

3.3 版本回退

廖雪峰大神:版本回退

$ git reset --hard ^HEAD # 退回到上一个版本
$ git reset HEAD~100 # 退回到前一百个版本

3.4 删除Untracked files

$ git clean -f

第四章 log 查看

$ git log           # 查看提交记录,假如回退版本了,不显示舍弃掉的提交记录
$ git reflog        # 可显示每一次的提交记录,包含舍弃掉的版本,比较全
$ git log -U1 --word-diff # U1 差异对比默认一行  --word-diff 比对单词
$ git log --graph   #查看分支合并图
$ git log --stat    #查看每次更新的文件修改统计信息
$ git log --oneline # 简化提交日志信息输出

查看某一个文件的提交记录

$ git log file_name

第五章 分支操作

$ git fetch origin 本地分支名:远程分支名
$ git checkout -b branch origin/branch # 这才是拉取远程分支ac_branch到本地
$ git branch # 查看本地库存在的所以分支,前面带*号的是当前分支
$ git checkout mine # 切换到mine分支

有错误的话欢迎指正,持续更新中。。。。。。

PS:省去每次输入账号和密码
git config --global credential.helper store
之后输入一次用户密码,之后就不用输入用户密码了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值