背景
git作为现在最为流行的版本管理系统,大部分公司都使用git进行版本控制,并且最大同性交友网站github也是在git的基础上建立的。
很多人认为git难,在于它的一些概念与之前流行的集中化的版本管理系统有所出入,只要通过熟悉git的基本概念,以及git分支切换的流程,想要上手还是很容易的。
这篇文章将介绍git的一些基本概念以及git常用的一些命令。
安装
去官网下载后配置用户信息
通过
git config --list
查看是否配置成功
仓库
初始化本地git仓库
git init
添加文件到本地git仓库
git add
提交到本地git仓库
git commit -m "test"
查看仓库状态
git status
下载并安装Sourcetree
工作流
从Sourcetree上进行逐层提交
例如,提交2次后删除第2次
在第一次提交后,右击,重置当前分支到此次提交
模拟场景
第一天提交完成后,产品经理临时变更需求,未最终提交,第二天产品经理说,不需要变更
执行如下命令
sq@DESKTOP-73KKEFH MINGW32 /e/Git/demo2 (master)
$ git status
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: gui_demo.txt
no changes added to commit (use "git add" and/or "git commit -a")
sq@DESKTOP-73KKEFH MINGW32 /e/Git/demo2 (master)
$ git add gui_demo.txt
sq@DESKTOP-73KKEFH MINGW32 /e/Git/demo2 (master)
$ git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: gui_demo.txt
sq@DESKTOP-73KKEFH MINGW32 /e/Git/demo2 (master)
$ git commit -m "first commit"
[master 037f056] first commit
1 file changed, 1 insertion(+), 1 deletion(-)
sq@DESKTOP-73KKEFH MINGW32 /e/Git/demo2 (master)
$ git add gui.demo.txt
fatal: pathspec 'gui.demo.txt' did not match any files
sq@DESKTOP-73KKEFH MINGW32 /e/Git/demo2 (master)
$ git add gui_demo.txt
sq@DESKTOP-73KKEFH MINGW32 /e/Git/demo2 (master)
$ git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: gui_demo.txt
sq@DESKTOP-73KKEFH MINGW32 /e/Git/demo2 (master)
$ git reset HEAD gui_demo.txt
Unstaged changes after reset:
M gui_demo.txt
sq@DESKTOP-73KKEFH MINGW32 /e/Git/demo2 (master)
$ git status
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working