1、简介
Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
2、增删改查命令
2.1 创建版本库
通过git init
命令把一个目录变成Git可以管理的仓库
git init
#从远端获取
git pull = git fetch + git rebase
2.2 提交文件
#第一步用add命令添加到仓库 git add . //添加全部,可以指定添加某个文件 #第二步commit命令提交到本地仓库 git commit -m"描述"
#第三步push到远程仓库
git push
2.3 删除操作
git rm xx.xxx
2.4 版本回退
git reset --hard commitID
2.5 查看仓库状态
git status
On branch master #所属分支
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: a.txt
no changes added to commit (use "git add" and/or "git commit -a")
2.6 查看修改前后对比
git diff xx.xxx
diff --git a/a.txt b/a.txt
index 396807c..d4cd5b4 100644
--- a/a.txt #-修改前
+++ b/a.txt #+修改后
@@ -1 +1,2 @@
-112aaaaa #修改前内容
#修改后内容
+112aaaaa
+22222bbbb
2.7 查看历史commit记录
git log
commit 57baa5d07376fd1c5e0ef4cd84ef3687814fcf5c (HEAD -> master)
Author: zhouhaihui <zhouhaihui@fzxs.com.cn>
Date: Sun Mar 8 10:22:06 2020 +0800
新增内容
2.8 操作记录
每一次的git命令操作都会被记录
git reflog
3、暂存区
有时一些修改暂时不想提交或者修改前备份一份,方便回滚。
3.1 新增操作
git stash save "save message"
3.2 删除操作
#恢复之前的缓存并对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0}; git stash pop #丢弃stash存储 git drop stash@{num} #清空所有缓存 git stash clear
#应用某个存储,但不会把存储从存储列表中删除
git stash apply
3.3 查看操作
#查看stash列表
git stash list
#显示做了哪些改动,几个新增,几个删除,不显示修改的内容
git stash show [stash@{num}]
-p 显示修改的内容
4、分支管理
4.1 新增分支
git checkout -b 分支名
上面命令相当于:
git branch
分支名
git checkout 分支名 //切换分支等同git switch
4.2 删除分支
git branch -d 分支名
4.3 查看分支
#查看所有分支,当前分支会高亮且*表示
git branch
4.4 合并分支到当前分支
一般很少用这种,太暴力了。一个项目即使负责不同模块,也有可能会修改共同的部分。
git merge 分支名
5、标签管理
#新增标签
git tag 标签名 【commitID】//可以指定打到一个提交上
#查看所有标签
git tag
#查看标签信息
git show 标签名
#删除标签
git tag -d 标签名
git push origin :refs/tags/<tagname> //删除一个远程标签
#提交本地标签到远端仓库
git push origin <tagname>
git push origin --tags //提交所有未推送过的本地标签
6、图形界面
gitk --all //可以打开图形窗口操作git,一般查看提交明细和合并提交用