Git入门

  

  1.1 简介

    免费、开源、分布式的一款版本控制系统。

    集中式版本控制(如CVS,SVN)版本被中央服务器集中管理,分布式版本控制系统中各节点地位同等,每个工作机都拥有项目的所有版本。

 

  1.2 版本库本质

    版本库本质是一个高效的数据存储结构,由以下部分组成:

    ⭕️文件(blob)文本、二进制数据等;

    ⭕️目录(Tree)保存与文件名向关联的内容,也包含目录;

    ⭕️版本(commit)每一个版本所定义的都是相应的目录的某个可恢复的状态,每当创建一个新的版本,其作者、时间、注释以及其之前的

  本都将会保存下来。

  

  1.3 初次使用

    首先,我们需要下载安装,地址如下:

    https://git-scm.com/download

    初次安装后使用,git会要求我们配置用户名和邮箱,使用如下命令配置:    

     git config --global user.name 'your username';

     git config --global user.email 'your email';

    创建版本库,进入我们进行版本管理的项目目录,通过init命令创建版本库

     $ cd /Users/cesar/Documents/study/git/

     $ mkdir first-git-prj

     $ cd first-git-prj/

     $ git init

     Initialized empty Git repository in /Users/cesar/Documents/study/git/first-git-prj/.git/

     $ ls -a 

     . .. .git

     创建完成后,项目目录中多了一个名为".git"的隐藏文件夹,用于存储项目的历史版本信息

    提交文件,使用add命令指定加入下次提交的文件,commit命令将文件提交至本地版本库    

     $ git add bar.txt foo.txt 

     $ git commit 

     $ git commit --message "commit bar.txt,foo.txt文件"

     [master (root-commit) 4861a62] commit bar.txt,foo.txt文件

     2 files changed, 2 insertions(+)

     create mode 100644 bar.txt

     create mode 100644 foo.txt

    使用commit 命令提交需要带 --message 参数,填写提交说明,否则会提交失败,并出现如下提示:

     Please enter the commit message for your changes. Lines starting

    检查状态,我们现在进行如下操作后(修改bar.txt,删除foo.txt,新建baz.htm),使用status命令查看上次提交以来所有的操作状态

    

    baz.html标记成了未跟踪状态

      比较文件内容修改的差异 , diff 命令

    1. git diff [filename]: 不带参数比较工作区与暂存区所有差异文件

    

    查看操作日志,git log

    克隆副本, git clone

    

    取回修改,git pull [remote] [branch]  

    不带参数的pull命令只在克隆版本库中有效,因为只有克隆体中有默认的原版本库链接

    原版本库从克隆体取回:

    $ git pull ../first-git-prj-clone/ master

    共享版本库,git clone --bare

      通常通过git clone --bare 创建一个不带工作区的版本库(裸版本库)作为共享版本库,用于开发者之间传递交互文件

      上载修改,git push

    上载只适用于向共享版本库上载: git push ../first-git-prj-clone-bare/

 

    命令提炼:

    git init :创建版本库

    git add :将修改或新增文件纳入下次提交(暂存区)

    git commit: 提交到版本库

    git status: 查看当前修改的文件的状态(新建、删除、add\commit等)

    git log : 查看提交记录

    git rm : 对删除的文件执行rm命令,使删除操作记录版本库,方便恢复文件

    git clone:克隆版本库

    git clone --bare :克隆共享版本库(裸版本库)

posted @ 2019-06-11 15:22  禅丶  阅读(77)  评论(0)    收藏  举报