创建 Git 仓库

什么是仓库呢?仓库又名版本库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以"还原"。


git init

Git 使用 git init 命令来初始化一个 Git 仓库,Git 的很多命令都需要在 Git 的仓库中运行,所以 git init 是使用 Git 的第一个命令。

在执行完成 git init 命令后,Git 仓库会生成一个 .git 目录,该目录包含了资源的所有元数据,其他的项目目录保持不变。

使用方法
使用当前目录作为 Git 仓库
shell 复制代码
git init

该命令执行完后会在当前目录生成一个 .git 目录。

使用指定目录作为Git仓库
shell 复制代码
git init <目录名>

初始化后,会在指定目录下会出现一个名为 .git 的目录,所有 Git 需要的数据和资源都存放在这个目录中。

例如:

shell 复制代码
git init mywarehouse

git add & git commit

git add & git commit 用于把文件添加到版本库。

先明确一下,Git只能跟踪文本文件的改动,比如TXT文件,网页等(所有的版本控制系统都是这样的)。而图片、视频、Microsoft的Word格式这些二进制文件,虽然也能由版本控制系统管理,但没法跟踪文件的变化,只能把二进制文件每次改动串起来,也就是只知道图片大小的变化,无法知道具体改动。

言归正传,现在我们编写一个README.txt文件,内容如下:

txt 复制代码
这是我的第一个git仓库

一定要放到mywarehouse目录下(子目录也行),因为这是一个Git仓库。

再在该目录下添加一些其他文件。

第一步,用命令git add告诉Git,把文件添加到仓库:

shell 复制代码
$ git add *.py                               # 将目录下以 .py 结尾的全部文件提交到仓库中
$ git add README.txt                         # 将目录下 README 文件提交到仓库中

疑难解答

​ 如果得到错误:fatal: not a git repository (or any of the parent directories),请检查命令是否在Git仓库目录内执行。因为Git命令必须在Git仓库目录内执行(git init除外),在仓库目录外执行是没有意义的。

​ 如果得到错误fatal: pathspec 'readme.txt' did not match any files,请检查该文件是否存在于当前目录下,或者是否写错了文件名。

第二步,用命令git commit告诉Git,把文件提交到仓库:

shell 复制代码
$ git commit -m '初始化项目版本'              # 生成版本,版本描述信息为:初始化项目版本

温馨提示:

​ 在 Linux 系统中,commit 信息使用单引号 ' ,Windows 系统,commit 信息使用双引号 "

​ 所以在 git bashgit commit -m '提交说明' 这样是可以的,在 Windows 命令行中就要使用双引号 git commit -m "提交说明"

为什么Git添加文件需要addcommit一共两步呢?因为commit可以一次提交很多文件,所以你可以多次add不同的文件,比如:

shell 复制代码
$ git add file1.py
$ git add file2.py file3.py
$ git commit -m "add 3 files."

添加文件到Git仓库,分两步:

  1. 使用命令git add <file>,注意,可反复多次使用,添加多个文件;
  2. 使用命令git commit -m <message>,完成。message 是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录。

git clone

我们使用 git clone 从现有 Git 仓库中拷贝项目。

克隆仓库的命令格式为:

shell 复制代码
git clone <warehouse>

如果我们需要克隆到指定的目录,可以使用以下命令格式:

shell 复制代码
git clone <warehouse> <directory>

参数说明:

  • warehouse :Git 仓库,如 github 仓库
  • directory:本地目录

比如,要克隆 Alist 的 Git 代码仓库 alist,可以用下面的命令:

shell 复制代码
$ git clone git://github.com/alist-org/alist.git

执行该命令后,会在当前目录下创建一个名为 alist 的目录,其中包含一个 .git 的目录,用于保存下载下来的所有版本记录。

如果要自己定义要新建的项目目录名称,可以在上面的命令末尾指定新的名字:

shell 复制代码
$ git clone git://github.com/alist-org/alist.git myalist
相关推荐
high20112 小时前
【Git】-- 版本说明
git
kaixin_learn_qt_ing2 小时前
git clone
git
sin22012 小时前
git stash
git
喝鸡汤2 小时前
一起学Git【第二节:创建版本库】
git
慢慢成长的码农2 小时前
git 同步分支操作
git
sin22012 小时前
git推送本地仓库到远程(Gitee)
git·gitee
丁总学Java4 小时前
git branch -r(--remotes )显示你本地仓库知道的所有 远程分支 的列表
git
yylの博客7 小时前
Windows通过git-bash安装zsh
windows·git·bash·zsh
丁总学Java7 小时前
(Z Shell)zsh: no matches found: ? 使用单引号包裹
git·zsh
萌狼蓝天8 小时前
【NAS】绿联NAS+极狐Gitlab+1Panel
git