目录
提交文件到本地仓库中的master分支区(git commit)
git add和git commit一起使用才能成功备份文件,那么他们分别做了什么呢?
git
版本控制是什么
简单来说就是每一次修改文件前,都做一次备份,保存修改前的文件,并且注释修改的文件,标明修改了什么,将所有的历史版本都保存下来,以应对不同的突发情况。
git的使用
第一次使用时可能会需要配置用户名和邮箱
设置用户名:git config --global user.name xxx,xxx代表用户名。
设置邮箱 :git config --global user.email xxx,xxx代表邮箱。
此用户名和邮箱是git提交代码时用来显示你身份和联系方式的,并不是gitee或者github的用户名和邮箱。填写时没有要求,可以随便填。
查看用户名:git config user.name
查看邮箱:git config user.email
克隆git远端仓库
1.git clone xx,xx表示你的git仓库,如下图的链接
工作目录,工作区,本地仓库各自是什么?
1. 工作目录:git仓库就是工作目录,比如从远端拷贝下来的git仓库。在本地将任何一个目录设置成git仓库,那么这个git仓库也叫工作目录。
2.工作区:工作目录下,除开.git文件,其他都是工作区。
2. 本地仓库,又称版本库:就是工作目录中的一个隐藏目录文件 .git,如下图中红框标明的部分。本地仓库里面的所有文件都可以被git仓库管理起来,每个文件的修改、删除,创建,git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。
如何在本地设置一个git仓库
1.git init xx, xx可以是本地的任何一个目录文件。
添加文件到本地仓库中的暂存区(git add)
1.git add xx,xx代表指定的文件,添加文件到暂存区。
2.git add . 表示将当前目录下所有没有进入暂存区的文件都添加进暂存区中。
提交文件到本地仓库中的master分支区(git commit)
1.git commit -m “xxx”,注意带双引号, xx代表提交日志。注意commit 后必须加 -m,m表示message,不带-m提交会失败。为什么呢?为了之后git log能把你找出来。
git add和git commit一起使用才能成功备份文件,那么他们分别做了什么呢?
git add是将文件添加到暂存区,如上图中的stage就是暂存区,master是git仓库自动创建的一个分支,git commit就是将暂存区里所有的文件一次性全部添加到master分支里。
git status
用于查看git仓库即工作目录的情况,比如刚刚已经使用git add和git commit成功备份了文件并且此时没有改变工作目录的任何内容,此时git status会如上图红框部分显示working directory clean,表示工作目录是干净的。但假如修改了某个已经被git add添加过的文件,此时会如下图红框部分:modified:test 。表示已经被git add添加过的test文件被修改了。 Untracked files: jjj,表示jjj还是尚未git add添加过的文件。jjj文件就算被修改过,但此时没有经过git add,就不会显示在下图modified的那块区域中。
提交文件到git远端仓库中
1.git push 即可。
显示提交日志信息(git log)
git log可以从上到下显示最新到最老的所有提交日志。使用场景:比如说一个程序之前是没有问题的,但现在出现了bug,因为提交文件是要git commit -m写提交日志的,否则提交会失败,所以就可以通过提交日志查看是谁修改了文件,找出罪魁祸首。如下图:
git push失败,即提交冲突
1.git pull ,在多人协作开发的场景中,如果此时user1写了一个文件file1,并且提交到了git远端仓库,但此时user2不知道,而且ls -l也没有发现file1文件的存在,此时user2也写完了一个file2文件,git push时发现提交失败了,这就是提交冲突的场景。此时应该git pull,将git远端仓库的文件和本地仓库同步,然后再次git push即可成功。一般发生提交失败的时候,可以无脑git pull。
.gitignore
如果不想一些以特定后缀名结尾的文件在git push时同步到git远端仓库,就可以将后缀名添加到 .gitignore隐藏文件中,这个文件相当于一个黑名单。如下图:
git命令失效
注意git命令必须在工作目录内执行,在工作目录外执行是没有意义的。
删除本地仓库和远端仓库文件的方法
删除本地仓库文件方法: git rm xx,将文件xx从暂存区和工作区中删除。
删除远端仓库文件方法: 在删除本地文件的基础上(即git rm xx后),git add . 并且 git commit -m “日志信息”,然后git push即可。