相信许多人都对 GitHub 一点都不陌生,即便不是程序员,我们也经常可以在 GitHub 上下载到非常优秀的开源软件。如果注意一下的话,我们会发现 GitHub 的名字是有 Git + Hub 组成的,而有一些编程基础的同学可能也会听说过 Git 或者 Git Repo 这类的词汇。但,Git 和 Git Repo 指的究竟又是什么呢?
Git 是一个用于追踪团队项目变化的开源应用,而 Git 又会将不同版本的项目储存在名为 Git Repository(版本库)的文件夹中。我们通过 Git 来进行版本控制,用户可以在此删除或复制已有的版本库或为现有的项目创建新的版本库,提高团队之间的协作效率。
在这篇教程中,我们会说明 Git 版本库是什么以及如何通过 Git 命令行创建并运用这些文件。然后,我们会使用 Python 在线运行一系列代码,再通过 Git 来追踪并保存这个 Python 项目中的所有历史更改并同步到 GitHub 的版本库中。
注册 Git Hub 账号
如果你已有 GitHub 账号,那就可以跳过这一步。
- 进入 GitHub 官网,国内的小伙伴可能需要科学上网或选择 Gitee 等其他 Git 资源网站。使用邮箱注册 GitHub 账号。
- 完成注册后,在 GitHub 界面右上角的 + 号中选择“New Repository”新建版本库。如果本地已有版本库,也可以通过“Import Repository”上传。
- 进入信息页面后,根据自己的喜好填写 Repository 的名称,你也可以直接在这里新建一个 README 的 Markdown 文件。完成后,点击“Create Repository”就可以了。
创建好 GitHub 的 Repository 后,你会获得一个类似这样:https://github.com/username/g... 的 GitHub 网址链接。之后,我们就可以把我们编写好的内容推到这个 GitHub 网址中了。
什么是 Git Repository?
如上文所述,Git Repository 会追踪并保存 Git 项目文件中的所有更改历史,然后把所有数据保存在 .git,文件中,也就是所谓的 Git 版本库。我们通过 Git 来进行版本控制,用户可以在此删除或复制已有的版本库或为现有的项目创建新的版本库。
Git Repository 的种类
Git Repository 会追踪并保存 Git 项目文件中的所有更改历史,然后把所有数据保存在 .git 文件中,而根据用户的权限,Git 版本库一般可分为两类:
Bare Repository
开发团队通过 Bare 版本库来共享团队成员所做出的变动。个体用户无法修改或创建新版本的文件。
Non-Bare Repositories
与 Bare 版本库相对,Non-Bare 版本库可以让用户随意修改已有的文件并创建新版本。一般上,复制(Clone)的过程中创建的是 Non-Bare 版本库。
如何获取 Git Repository
Git 版本库的获取方式同样也有两种:
- 将已有的文件夹转换为 Git 版本库(初始化)
- 从已有项目中克隆或复制 Git 版本库
初始化版本库
使用 Python 在线运行的编辑器,我们可以在下方的终端里输入 git init 就可以初始化版本库了。
初始化完毕后,系统会自动创建一个名为 .git 的文件夹并开始追踪项目中的变化,但我们只有在项目中做出改动,版本库才会开始追踪项目版本。
如果你使用其他的编辑器,你也许需要根据你的系统环境在终端中先输入路径,再输入 git init 命令。例如:cd C:/Users/Lightly/git_example
克隆或复制版本库
除了自建版本库,我们也可以在 Python 在线运行的编辑器使用 git clone 命令从已有的版本库中复制到我们的系统。我们需要在 [url] 部分输入 Git 版本库的网址,然后在 [directory] 部分指定版本库名称。如果版本库名称部分留空,那么 Git 就会直接复制原版本库的名称。git clone [url] [directory]
大家可以通过 Python 在线运行并克隆上面的 Git 版本库:https://github.com/libgit2/py...
如何使用 Git 版本库
Git 提供多种不同的命令来创建不同版本的项目:
设置版本库
添加现有版本库的用户:
git config --global user.name "[your_name]"
为现有用户添加邮箱:
git config --global user.email "[email_address]"
为常用的 Git 命令添加快捷指令:
git config --global alias.[alias_name] [git_command]
通过调整颜色让 Git 文件改动变得更容易追踪:git config --global color.ui auto
注:如果去掉 --global 选项,那么设置命令只会覆盖本地的版本库。此外,把 --global 选项替换为 --local 也可以达到同样效果。
打开全球 Git 配置文件:git config --global --edit
保存变化
我们可以在 Python 在线运行的编辑器终端中,通过 git add 或 git commit 命令来更新 Git 文件中的变化。其中,git add 命令将文件添加到暂存区,而 git commit 命令将阶段性修改应用到版本库中。
添加单个或多个文件:git add [file/directory name]
添加所有文件:git add --all
当我们把文件添加到暂存区后,我们还需要通过 git commit 命令把修改应用到版本库中:
git commit -m "Committing files to the repository"
允许协作
在 Git 中,我们可以通过 git push 和 git pull 命令来复制和分享版本库:
git push [remote repository] [branch name]
git pull [remote repository]