Git本地库的建立与使用

Git本地库的建立与使用

#转自黄海亮博客 https://huanghailiang.github.io

本笔记是自己在网上学习后整理后得到的,主要针对的是本地库的建立以及使用,对于远程库的操作这里暂时不涉及。

本教程的本地库的建立主要是在linux系统上建立,windows上可以使用命令行的git bash 或者带有图形界面的TortoiseGit进行操作,有兴趣的话可以自己学习一下。

在linux版本上:

1、打开终端输入git,如果没有安装,按照提示指令进行安装。例如:sudo apt-get install git。如果已经安装会有如下显示

img

2、Git的配置
设置你的名字和email,就是你提交commit时的签名,每次提交记录里面都会包含这些信息。使用git config命令进行设置。

img

执行后会在根目录下建立一个叫.gitconfig的文件(该文件为隐藏文件需要使用ls -la查看到)

img

其中隐藏文件.gitconfig的内容可以使用vim或者cat进行查看

img

3、获取一个Git仓库,这里有两种方法,一种是直接clone一个仓库,另一个是初始化一个仓库。这里我们可以直接自己初始化一个仓库,当然clone仓库也是比较简单的,自己看一下就好。
首先需要自己创建一个仓库文件夹,路径什么的自己选择就好,创建使用mkdir就好。例如:mkdir project 就是创建了一个叫project的文件。这里我之前自己手动建立好了一个文件夹就直接使用cd命令进去就好了。初始化Git仓库使用git init命令,Git输出如下。

img

使用ls -la 可以看出来有一个.git目录被创建,意味着仓库被初始化。

4、git仓库已经被创建好了,接下来就是一些基本操作了。

基本流程:
(1)、创建或者修改文件
(2)、使用git add命令添加新创建或修改的文件到本地的缓存区(Index)。使用的时候是git add <文件名>或者git add 说明添加当前文件夹下的所有文件。

img

(3)、使用git commit命令提交到本地代码库。git commit -m “双引号中间是你们提交代码时写的备注” 使用-m的目的是为了添加本次修改的注释,完成后就会记录一个新的版本。除了用git add命令,我们还可以使用git commit -a -m “双引号中间是你们提交代码时写的备注” 将所有没有加入到缓存区的修改也一起提交,但是 -a命令不能添加新建文件。
img

(4)(这一步我们的工程不需要,因为我们不需要同步到远程的代码库,因为同步到远程的代码库后相当于开源给了所有人,但是后期你们自己使用git的时候是可以使用的)使用git push命令将本地代码库同步到远端代码库。

git status命令查看当前git仓库的状态。

git commit提交了本地代码库以后,可以是使用git diff 命令再加上 –cached参数,看看缓存区中哪些文件被修改了。进入到git diff –cached界面后需要输入q才可以退出。如果没有 –cached参数,git diff会显示当前你所有已经做的但是没有加入到索引里的修改。所有修改完了以后都需要按照上面的步骤加上缓存区,在用commit提交到本地库。

注:如果是修改文件,也需要使用git add命令添加到缓存区才可以提交。如果是删除文件,则直接使用git rm命令删除后悔自动将已删除文件的信息添加到缓存区,git commit提交后会将本地仓库中的对应文件删除。(【这一步我们不使用】如果本地仓库链接到了远程Git服务器,可以使用git push origin master 命令将本地仓库同步到远端服务器)。

5、git的基本操作以及介绍完了。但是基本都是个人操作的,下面介绍一下如果团队合作的话,每个人写一部分代码,最终合并的话,我们需要使用分支与合并的知识。

(1)、分支

使用 git branch <分支名>来创建分支。这里我将为大家每个人创建一个分支,分支名的命名方式我将使用*表示目前所在的分支。Master是默认的主分支。
img

使用git checkout <分支名>来选择切换分支,例如下面我将会切换成我自己的分支:由图可以看到*已经跑到了hhl前面说明现在的分支是hhl。

img

切换到自己的分支以后可以自己更改自己的程序,这样并不会影响到其他分支的程序。

(2)、合并

可以使用git merge命令来进行合并。例如想合并hhl分支到主分支,则需要先切换到主分支上git checkout master 然后再将hhl分支合并到主分支中,git merge -m “这里双引号里面依旧是注释” hhl

-m参数仍然是填写合并的注释信息。

注:如果如果两个想要合并的分支都对同一个文件进行了修改,则在合并的时候会有冲突。这个地方需要我们使用vim编辑器手动解决冲突,然后再add再commit提交。

(【这一步也不需要,后期自己使用可以先了解一下】,合并完分支后,如果想删除分支的话使用 git branch -d <分支名>,这个只针对已经被当前分支合并了的分支,如果你想要前置删除某个分支的话使用 git branch -D <分支名>)

撤销合并:如果合并完以后,想要把当前修改都放弃,可以使用 git reset –hard HEAD^ 进行撤销合并。

6、查看日志

git log 命令可以显示所有的提交。如果提交的历史纪录很长,回车会逐步显示,输入q可以退出。

img

如果用git log –stat 它会显示在每个提交(commit)中哪些文件被修改,这些文件分别添加或删除多少行内容,这个命令相当于打印详细的提交记录。

小结,基本指令:

(1)git config :配置相关信息

(2)git clone :复制仓库

(3)git init :初始化仓库

(4)git add :添加更新内容到

(5)git diff :比较内容

(6)git status :获取当前项目状况

(7)git commit :提交

(8)git branch :分支相关

(9)git checkout :切换分支

(10)git merge :合并分支

(11)git reset :恢复版本

(12)git log :查看日志