建设官方网站企业网站,公司可以做网站,网站建设都是模板,网站建设合作合同通过本章的学习#xff0c;应该能够配置和初始化一个仓库#xff0c;开始和停止跟踪文件#xff0c;暂存和提交更改。我们还将展示如何设置 Git 来忽略特定的文件和文件模式#xff0c;如何快速轻松地撤销错误#xff0c;如何浏览项目的历史记录并查看提交之间的更改…通过本章的学习应该能够配置和初始化一个仓库开始和停止跟踪文件暂存和提交更改。我们还将展示如何设置 Git 来忽略特定的文件和文件模式如何快速轻松地撤销错误如何浏览项目的历史记录并查看提交之间的更改以及如何与远程仓库进行推送和拉取。
获取一个git仓库
获取一个 Git 仓库
通常有两种方式可以获取一个 Git 仓库
将一个当前没有进行版本控制的本地目录转换为一个 Git 仓库从其他地方克隆一个现有的 Git 仓库。
无论哪种方式最终都会在本地机器上获得一个 Git 仓库准备开始工作。
从现有目录初始化仓库
如果有一个当前尚未进行版本控制的项目目录而想要用 Git 开始对其进行控制首先需要进入该项目的目录。一下操作以ubuntu22.04为例 $ cd git-tech $ git init 这会创建一个名为 .git 的新子目录其中包含所有必要的仓库文件 —— 一个 Git 仓库的骨架。此时项目中尚未跟踪任何内容。有关刚刚创建的 .git 目录中包含哪些文件的详细信息请参阅 Git 内部原理。 创建新的文件 并对这些文件进行版本控制。 $ git status $ git add git-tech.c $ git commit -m init a .c file clone一个已存在的仓库
如果想获取一个已存在的 Git 仓库的副本 —— 例如一个我们想要贡献的项目 —— 需要使用的命令是 git clone。
如果熟悉其他版本控制系统比如 Subversion就会注意到命令是 clone 而不是 checkout。这是一个重要的区别 —— Git 不仅仅获取一个工作副本而是接收了服务器上几乎所有数据的完整副本。当运行 git clone 时默认情况下会拉取项目历史上每个文件的每个版本。事实上如果当前服务器磁盘损坏通常可以使用任何一个客户端上的几乎任何克隆来将服务器恢复到克隆时的状态可能会丢失一些服务器端的钩子等内容但所有版本化的数据都会在那里。
可以通过 git clone url 来克隆一个仓库。例如如果想克隆名为 libgit2 的 Git 可链接库可以这样做 $ git clone https://github.com/libgit2/libgit2 这会创建一个名为 libgit2 的目录在其中初始化一个 .git 目录拉取该仓库的所有数据并检出最新版本的工作副本。如果进入刚刚创建的 libgit2 目录会看到其中的待使用项目文件
如果想要将仓库克隆到一个名为 libgit2 之外的目录中可以将新目录名指定为一个额外的参数 $ git clone https://github.com/libgit2/libgit2 mylibgit Git有多种不同的传输协议可供选择。前面的示例使用了 https:// 协议但也可能会见到 git:// 或 userserver:path/to/repo.git它使用 SSH 传输协议。