一、工作流程
二、获取本地仓库
要想使用Git对我们的代码进行版本控制,首先需要获得本地仓库 (1)在电脑的任意位置创建空目录,例如git_test作为我们的本地git仓库 (2)进入到这个目录,右键打开git bash窗口 (3)执行命令git init (4)创建成功后即可在目录里看到.git目录
三、Git常用指令
1、查看文件状态
可以查看到它是属于上图中未跟踪的状态,我们需要添加至暂存区,并且提交到本地仓库,git add .表示将当前目录下所有的修改都加入暂存区
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (master)
$ git add .
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (master)
$ git status
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: file01.txt
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (master)
$ git commit -m "add file01"
[master (root-commit) 4357b44] add file01
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 file01.txt
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (master)
$ git status
On branch master
nothing to commit, working tree clean
可以看到工作区没有内容,证明创建的文件已经提交至本地仓库了
2、查看提交日志
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (master)
$ git log
commit 4357b44d7605e37ea471798d0ea388472af3b4d4 (HEAD -> master)
Author: liyu <ly246824ly@163.com>
Date: Wed Apr 20 16:31:39 2022 +0800
add file01
我们对上述的file01文件做一次修改,再add,再commit,之后看它的提交日志,可以看到有两次提交
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (master)
$ git log
commit 0e85a804b48774a756806a68704840850268f9a6 (HEAD -> master)
Author: liyu <ly246824ly@163.com>
Date: Wed Apr 20 16:38:05 2022 +0800
update file01
commit 4357b44d7605e37ea471798d0ea388472af3b4d4
Author: liyu <ly246824ly@163.com>
Date: Wed Apr 20 16:31:39 2022 +0800
add file01
3、版本回退
作用及其使用的命令:
作用:用于版本切换 命令:git reset --hard commitID commitID可以使用git log指令查看
4、添加文件至忽略列表
直接将文件添加至.gitignore这个文件即可。
三、分支
几乎所有的版本控制系统都以某种形式支持分支,使用分支意味着你可以把你的工作从开发主线上分离开来进行重大bug的修改,在你自己的分支上开发新的功能,以免影响开发主线。
1、查看本地分支
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (master)
$ git branch
* master
2、创建分支
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (master)
$ git branch dev01
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (master)
$ git branch
dev01
* master
3、切换分支
$ git branch
dev01
* master
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (master)
$ git checkout dev01
Switched to branch 'dev01'
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (dev01)
$ git branch
* dev01
master
创建并切换到一个不存在的分支里
$ git checkout -b dev02
Switched to a new branch 'dev02'
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (dev02)
$ git branch
dev01
* dev02
master
4、合并分支
将一个分支上的提交,合并到另一个分支上,以dev01合并到master上为例,必须先切换到master分支里
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (master)
$ git merge dev01
Updating 4357b44..d704055
Fast-forward
file02.txt | 0
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 file02.txt
效果图如下:
5、删除分支
$ git branch -d dev02
Deleted branch dev02 (was 4357b44).
删除不了的话可以强制删除,-D
6、解决冲突
何为冲突?
当两个分支上对同一个文件的同一行内容进行的不同的修改,就会发生冲突。会把两个分支修改的内容全部显示出来,效果图如下:
如何解决?
这时需要我们指定好file01里的内容,使得count=5,然后进行add,commit等操作,再查看就是我们修改好的内容了。
Lenovo@LAPTOP-9AP25JNG MINGW64 ~/Desktop/git_test (master)
$ cat file01.txt
update count=5
|