用Git进行版本控制(二)创建代码仓库(mark)

2018-07-31  本文已影响0人  地坛公园

前言:
教程来源于Udacity的免费教程-用Git进行版本控制,这里仅是个人的笔记,参考使用。

需要学习的三个命令:


image.png

Git Init:使用Git在你的计算机上创建全新的仓库(repo).
Git clone:克隆一个已有的代码仓库到本地计算机或是其它地方(repo).
Git status:查看代码库的状态.

所需的命令
注意!我们将在这节课使用以下终端命令:

ls - 用来列出文件和目录
mkdir - 用来新建目录
cd - 用来更改目录
rm - 用来删除文件和目录
如果你不知道如何使用它们,请参阅我们的 Linux 命令行基础 课程!

我们还会涉及的一个概念是当前目录,即你的 shell 正在查看的目录。使用 cd 可以更改工作目录,使用 ls(单独使用)会列出工作目录下的文件。如果你忘记 shell 的当前工作目录,可以使用 pwd 命令(表示 print working directory 输出工作目录)输出该目录的名称。

*pwd-输出当前的工作目录
*clear-清屏

创建代码仓库:

创建一个目录,叫做udacity-git-course
在该目录中,创建另一个目录,叫做 new-git-project
使用 cd 命令移到 new-git-project 目录下

如果你和我一样喜欢复制粘贴,则在终端上运行以下命令:mkdir -p udacity-git-course/new-git-project && cd $_(在运行此命令前,确保使用 cd 命令转到你想将这些文件存储到的位置。例如,如果你想将文件存储到桌面上,则使用 cd 转到桌面,然后再运行该命令。)

一切准备好后,你的终端应该位于 new-git-project 目录中,并看起来如下所示:

image.png

git init

很棒!我们已经准备好,并且可以开始使用 git init 命令了!

这是最简单的命令之一。你只需在终端上运行 git init。就这么多内容,立即试试吧!

image.png

该命令会在当前目录下初始化生成一个空的Git仓库。

git init 命令的作用

运行 git init 命令会初始化 Git 跟踪所有内容会用到的所有必要文件和目录。所有这些文件都存储在叫做 .git(注意开头有个 .,表示在 Mac/Linux 上,它将是一个隐藏目录)的目录下。这个 .git 目录是一个库!Git 会将所有 commit 记录在这里,并跟踪所有内容!

我们来大致了解下 .git 目录下的内容。

警告:请勿直接修改 .git 目录下的任何文件。这是仓库的核心。如果你更改了文件名或文件内容,Git 可能就无法跟踪你保存在仓库中的文件,你可能会丢失很多内容!可以查看这些文件,但是请勿编辑或删除这些文件。

*类似于SVN里的.svn

image.png

description 文件 - 此文件仅用于 GitWeb 程序,因此可以忽略
hooks 目录 - 我们会在此处放置客户端或服务器端脚本,以便用来连接到 Git 的不同生命周期事件
info 目录 - 包含全局排除文件
objects 目录 - 此目录将存储我们提交的所有 commit
refs 目录 - 此目录存储了指向 commit 的指针(通常是“分支”和“标签”)

深入研究

git init 小结
使用 git init 命令可以在当前目录下创建新的空仓库。

$ git init
运行此命令可以创建隐藏 .git 目录。此 .git 目录是仓库的核心/存储中心。它存储了所有的配置文件和目录,以及所有的 commit。

克隆现有仓库

至于为什么要克隆,你可以理解为重用,比如我新项目和原有的上一个项目在结构组合配置上相似或是相同,一个一个的创建太机械低效,使用克隆可以直接copy出来到一个新的仓库中。

在 Git 上进行克隆的方法是调用我们将在终端上运行的命令 git clone,然后传入要克隆的 Git 仓库的路径(通常是 URL)。

想要尝试克隆一个现有的项目?我们来看看如何使用 Git 的 clone 命令!

克隆 blog 仓库

准备好了?我们开始克隆吧!

输入命令 git clone,然后输入你要克隆的 Git 仓库的路径。我们将在这门课程中一直使用的项目位于以下 URL 上:https://github.com/udacity/course-git-blog-project 。因此,使用该 URL 克隆 Blog 项目的完整命令是:

git clone https://github.com/udacity/course-git-blog-project

(他这里是从github服务上clone代码仓库,也可以克隆刚才本地创建new-git-project,只需要写详细的路径即可。如:


image.png

)

验证终端位置
提示:在克隆任何内容之前,确保命令行工具已定位于正确的目录下。克隆项目会新建一个目录,并将克隆的 Git 仓库放在其中。问题是无法创建嵌套的 Git 仓库。因此,确保终端的当前工作目录没有位于 Git 仓库中。如果当前工作目录没有在 shell 的提示符中显示,输入 pwd 输出工作目录。

*你不能在一个Git仓库中再嵌套创建另外一个Git仓库(repo).

不要在当前的Git仓库中进行clone.

目前我本机还无法从github中clone代码,一直失败,解析不了github.com,尝试了很多方法,无果,暂且用本地的仓库进行试验,稍后再去解决!

默认情况下,克隆出来的名字和原仓库的名字是相同的,如何使用不同的名称?

只需要在命令后面,加上新的项目名称即可,如:

git clone udacity-git-course/new-git-project new-git-project2

image.png

注意:在clone仓库以后,我们要通过cd手动切换到新的工作目录下!

cd new-git-project2

image.png

判断仓库(repo)的状态

git status 命令将显示仓库的当前状态。

git status 是了解 Git 的核心所在。它将告诉我们 Git 正在考虑什么,以及 Git 所看到的我们仓库的状态。当你第一次使用 Git 时,你应该一直都要使用 git status 命令!说真的,你应该习惯于运行任何其他命令之后,都运行下该命令。这样可以帮助你了解 Git 的工作原理,并避免你对文件 / 仓库状态做出不正确的推论。

输入:
git status

image.png

从输出状态可以清晰地看出没有任何 commit!

上一篇下一篇

猜你喜欢

热点阅读