Git - 在线存储库


GitHub是一个基于 Web 的托管服务,适用于使用 Git 修订控制系统的软件开发项目。它还可以直接从服务网站下载标准 GUI 应用程序(Windows、Mac、GNU/Linux)。但在本次会议中,我们只会看到 CLI 部分。

创建 GitHub 存储库

访问github.com。如果您已有GitHub帐户,请使用该帐户登录或创建一个新帐户。按照github.com网站上的步骤创建新存储库。

推送操作

Tom 决定使用GitHub服务器。为了开始一个新项目,他在其中创建了一个新目录和一个文件。

[tom@CentOS]$ mkdir github_repo

[tom@CentOS]$ cd github_repo/

[tom@CentOS]$ vi hello.c

[tom@CentOS]$ make hello
cc hello.c -o hello

[tom@CentOS]$ ./hello

上述命令将产生以下结果:

Hello, World !!!

验证代码后,他使用 git init 命令初始化目录并在本地提交更改。

[tom@CentOS]$ git init
Initialized empty Git repository in /home/tom/github_repo/.git/

[tom@CentOS]$ git status -s
?? hello
?? hello.c

[tom@CentOS]$ git add hello.c

[tom@CentOS]$ git status -s
A hello.c
?? hello

[tom@CentOS]$ git commit -m 'Initial commit'

之后,他将GitHub存储库 URL 添加为远程源并将其更改推送到远程存储库。

[tom@CentOS]$ git remote add origin https://github.com/kangralkar/testing_repo.git

[tom@CentOS]$ git push -u origin master

推送操作将询问GitHub用户名和密码。验证成功后,操作就会成功。

上述命令将产生以下结果:

Username for 'https://github.com': kangralkar
Password for 'https://kangralkar@github.com': 
Counting objects: 3, done.
Writing objects: 100% (3/3), 214 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://github.com/kangralkar/test_repo.git
 * [new branch]      master −> master
 Branch master set up to track remote branch master from origin.

从现在开始,Tom 可以将任何更改推送到GitHub存储库。他可以通过GitHub存储库使用本章讨论的所有命令。

拉动操作

Tom 成功地将所有更改推送到GitHub存储库。现在,其他开发人员可以通过执行克隆操作或更新其本地存储库来查看这些更改。

Jerry 在他的主目录中创建一个新目录,并使用 git clone 命令克隆GitHub存储库。

[jerry@CentOS]$ pwd
/home/jerry

[jerry@CentOS]$ mkdir jerry_repo

[jerry@CentOS]$ git clone https://github.com/kangralkar/test_repo.git

上述命令产生以下结果:

Cloning into 'test_repo'...
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 3 (delta 0)
Unpacking objects: 100% (3/3), done.

他通过执行 ls 命令来验证目录内容。

[jerry@CentOS]$ ls
test_repo

[jerry@CentOS]$ ls test_repo/
hello.c