git简介

工作目录树是版本库的一个“断面视图”,它包括了开发该项目所需要的全部文件,包括源代码文件、构建文件、单元测试文件等。

Git新手经常会混淆Git中的版本库和工作目录树。因为在Subversion等传统的版本控制工具中,工作目录在本地,版本库在服务器上,而Git中并非如此。

Git中,版本库不在服务器上,而存储在本地工作目录树的“.git”目录中。这意味着,要想知道历史信息,只和本地的版本库打交道即可,无须与服务器上的版本库通信。

那么工作目录树最初是怎么创建出来的呢?有两个方法:第一个方法是用Git相关命令初始化版本库,也就是生成“.git”目录,于是“.git”目录的父目录就成了工作目录树。第二个方法是克隆一个已有的版本库,也就连带创建了相应的工作目录树。

1. 创建版本库:

在git中创建版本库,首先要决定把项目源代码存放在哪里:

>mkdir mysite
>cd mysite
>git init
Initialized empty Git repository in /work/mysite/.git/

创建完成,从现在开始,这个Git版本库就可以用来记录和跟踪该项目的代码了。

相比其他版本管理系统,在Git中建立一个版本库是很简单的。命令git init会创建一个.git目录。这个目录用来存放版本库的全部元数据。mysite目录作为工作目录树,存放从版本库中检出的代码。

2. 代码修改:

>git add index.html
>git commit -m "add in hello world html"
>git log

git log命令可以看到这个提交相关的信息。

3. 在项目中工作:

修改index.html完毕,Git可以检测到文件被修改。命令git status会显示工作目录树的状态,即当前的视图状态。

>git status

命令的输出表明Git检测到了修改,但还不知道如何处理他们。修改过的文件在Changed but not updated下列出来,如果要提交,须要暂存修改。暂存修改,以准备把修改提交到版本库。

在Git中,有3个地方可以存放代码:

i) 工作目录树,编辑文件时可以直接在这里操作。

ii) 索引,也就是暂存区,暂存区是工作目录树和版本库之间的缓冲区,暂存区中存放的是准备提交到版本库中的修改(>git add)。

iii) 版本库

4. 克隆远程版本库:

git clone命令克隆远程版本库,它会在本地创建远程版本库的完整拷贝。

原文地址:https://www.cnblogs.com/i-hard-working/p/10693352.html