美文网首页
git基本介绍

git基本介绍

作者: 田浩thao | 来源:发表于2019-06-10 13:59 被阅读0次

git基本操作

初始化

git安装后设置用户与邮箱:

git config --global user.name "Your Name"
git config --global user.email "email@example.com"

查看用户与邮箱

git config user.name
git config user.email

创建版本库

介绍

版本库:仓库(repository),这里可以简单理解为一个文件夹

创建过程

在需要创建的路径下按以下过程进行创建

*将该目录初始化为git仓库*

git init

*创建后再目录下回出现.git目录,该目录即为对仓库跟踪管理的,不可以对该目录进行修改*

*#在创建的仓库下编写文档1.txt,写入以下内容*

Git is a version control system.
Git is free software.

*将文件添加到仓库:*

git add 1.txt

*执行之后没有任何显示,则为正常*

*提交文件到仓库*

git commit -m 'git test'

*-m后是提交说明,便于他人或自己查看修改说明*

注:一共分为两步,add 与 commit, commit可以一次提交多个文件,add 也可以一次添加多个文件,如下:

$ git add file1.txt
$ git add file2.txt file3.txt
$ git commit -m "add 3 files."

查看git状态

如果对文件进行了修改,则可以通过以下命令了解git状态,并对比修改前后不同

git status

git diff 1.txt

查看变化之后就可以通过add 与commit 对其进行添加与提交了

查看每次修改说明,通过git log进行查看,显示从最近到最早的修改说明。git log --pretty=oneline简略显示修改说明,最前面的一长串数字为commit id(版本号)

版本回退

HEAD表示当前版本,HEAD^表示上一版本,HEAD^^表示上上一个版本,。。。HEAD~100表示前100个版本。

通过以下命令回退到过去版本:

git reset --hard HEAD^ 

注:此时通过git log已经看不到现在版本了

如果又想回到当前版本,通过git reflog查看每次的输入记录,从记录中可以看到commit id,然后通过git reset --hard 1094a,hard 后便是commit id,这里的id不需要写完整,写前几位即可。

下图为版本发生变化后的HEAD的变化过程,可以看出,在版本变化时,HEAD只是指向了不同的版本,所以在版本回退过程是非常快的。

held变化过程1
held变化过程2

add与commit内部变化过程

基本概念

工作区(Working Directory):就是电脑上工作目录,git仓库

版本库(Repository):工作目录中.git目录,这个不算工作区,称为版本库

暂存区(stage/index): .git中最重要的一部分,Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD

3.jpg

前面介绍到,想要管理一个文件,则该文件首先add到仓库,然后commit到仓库,整个过程的变化如下

git add readme.txt 
git add LICENSE
4.jpg

git commit -m "append readme.txt and LICENSE"

5.jpg

注:通过上述过程分析可知,在实际开发过程中,无需每次add到仓库之后立刻执行commit,应该是经常add,最后commit一次就可以了

撤销修改

如果编辑的文档想要回到初始状态,用命令git chechout --FileName进行撤销修改。
这里有两种情况:

  1. 还没有放到暂存区,即只是对文档做了修改,还没有add,此时撤销是回到了文档编辑之前的状态,也就是版本库的最新状态(如果之前暂存区没有文档,即已经全部commit,则回到最近一次git commit状态,否则回到最近一次git add状态)
  2. 对文档做了修改,并且已经add到了暂存区,则此时撤销修改就回到了暂存区的状态(回到最近一次git add 状态)
    注:这里的git chechout命令在切换分支时还会使用到,但是没有了--

如果已经add,但是还没有commit,但是想撤销add,此时用git reset HEAD FileName命令,则此时暂存区将被清理干净,但是工作区的文档如果有过修改,则可使用git chechout --FileName回到上次commit的状态。
如果已经commit,但是想回到commit之前的版本,则用到了前面的命令git reset --hard HEAD^

删除文件

如果将文件从工作区删除,但此时版本库中文件还存在,故通过git status可以看到哪些文件已被删除。

  1. 如果确实要将文件删除,则可通过git rm FileName,git commit -m "remove FileName"将版本库中的文档一并删除
  2. 误删,此时用上面提到的git checkout --FileName恢复对工作区的修改

分支管理

使用场景

在开发过程中,可能是多人协作共同开发,此时如果每个人在master分支上进行操作,则整个项目将非常混乱。正确的方法是每个人创建一个属于自己的分支,自己可以随时add,然后再合适的时候在commit,此时commit只是在自己的分支上,故不会影响到别人开发。等自己开发完成后即可将自己的分支请求合并到master中,此时别人才能够看到你的开发。

操作过程

1.创建分支

git checkout -b dev(-b代表创建dev分支,并切换到dev分支)

相当于:

git branch dev
git checkout dev

可以使用git branch查看所有分支,其中前面带*号的表示当前所处分支
此时对工作区做add以及commit都是在dev分支上进行的操作,不会影响到master分支

6.jpg

注:HEAD每次指向的都是当前分支所在位置

2.合并分支

git checkout master (切换到master分支)
git merge dev(将dev合并到当前master上)

3.删除分支

将dev分支合并到master分支后,就可以删除dev分支了

git branch -d dev

此时在通过git branch只能看到master分支,已经看不到dev分支

以上内容如有理解不当,请指出,谢谢!另,文章中有些内容来源于一些书籍或其他博客,这里就不一一列举,如有侵权,请与我联系删除。

相关文章

  • Git基本介绍

    git其实是是一个不用网络的仓库(本地仓库),你也可以把数据push到github上(远程仓库)。 你现在的pul...

  • git基本介绍

    git基本操作 初始化 git安装后设置用户与邮箱: 查看用户与邮箱 创建版本库 介绍 版本库:仓库(reposi...

  • git分支基本介绍

    相关:git branch -d 和 git branch -D 的区别 前言 git是开发的必备工具,在团队协作...

  • Git 的基本介绍

    1.版本控制是一种软体工程技巧,在开发过程中,确保由不同人所编辑的同一档案得到更新。 版本控制分为两大阵营:集中式...

  • git 基本操作介绍

    remote 远程仓库 master 分支 feature 分支 本地分支 clone 项目:git clone ...

  • git -- 分支基本介绍

    前言 git是开发的必备工具,在团队协作中,总会遇到对本地和远程分支的管理,我们就几个概念进行一个简单的梳理和延伸...

  • 快速上手,Git 基本使用

    Git 基本使用 git 介绍 https://www.liaoxuefeng.com/wiki/89604348...

  • 最容易上手的Git手册

    Git 基本使用 git 介绍https://www.liaoxuefeng.com/wiki/896043488...

  • git命令大全

    一、 Git 命令初识 在正式介绍Git命令之前,先介绍一下Git 的基本命令和操作,对Git命令有一个总体的认识...

  • git常用命令

    一、 Git 命令初识 在正式介绍Git命令之前,先介绍一下Git 的基本命令和操作,对Git命令有一个总体的认识...

网友评论

      本文标题:git基本介绍

      本文链接:https://www.haomeiwen.com/subject/ljfgtctx.html