Python之创建远程仓库

现在的情景是,你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举多得。

 

第一种情况:将本地仓库的内容上传给远程仓库:

第一步,登陆GitHub,然后,在右上角找到“New repository”按钮,创建一个新的仓库:

 

 

 

创建好的仓库

 

 

目前,在GitHub上的这个oldboy_website仓库还是空的,GitHub告诉我们,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库。

第二步,我们根据GitHub的提示,在本地已有的git_trainning仓库(即当前git_trainning目录)下运行命令:

 

$ git remote add origin [email protected]:triaquae/oldboy_website.git #添加远程仓库

 

有时会出现错误提示:fatal: remote origin already exists.

解决办法如下:

    1、先输入$ git remote rm origin

    2、再输入$ git remote add origin [email protected]:djqiang/gitdemo.git 就不会报错了!

 

来自

 

$ git push -u origin master #推到远程

 

The authenticity of host 'github.com (192.30.253.113)' can't be established.

RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.

Are you sure you want to continue connecting (yes/no)? yes   #第一次推会出现,写yes

Warning: Permanently added 'github.com,192.30.253.113' (RSA) to the list of known hosts.

Counting objects: 20, done.

Delta compression using up to 8 threads.

Compressing objects: 100% (14/14), done.

Writing objects: 100% (20/20), 1.76 KiB | 0 bytes/s, done.

Total 20 (delta 4), reused 0 (delta 0)

remote: Resolving deltas: 100% (4/4), done.

To [email protected]:triaquae/oldboy_website.git

 * [new branch]      master -> master

Branch master set up to track remote branch master from origin.

 

请千万注意,把上面的triaquae替换成你自己的GitHub账户名,否则,你在本地关联的就是我的远程库,关联没有问题,但是你以后推送是推不上去的,因为你的SSH Key公钥不在我的账户列表中。

添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。

把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。

此时刷新远程仓库页面, 就看到了你刚从本地推上来的代码了

 

 

从现在起,只要本地作了提交,就可以通过命令:

 

$ git push origin master

what ? 不信?那帮你试一下吧

创建一个index.html文件,同时上传到远程

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

$ vim index.html

$ git add .

$ git commit -m "add home page"

 

[master 8675486] add home page

 1 file changed, 6 insertions(+)

 create mode 100644 index.html

 

$ git push origin master #推到远程

 

Counting objects: 3, done.

Delta compression using up to 8 threads.

Compressing objects: 100% (3/3), done.

Writing objects: 100% (3/3), 362 bytes | 0 bytes/s, done.

Total 3 (delta 0), reused 0 (delta 0)

To [email protected]:triaquae/oldboy_website.git

   03df00a..8675486  master -> master

 

然后刷新下远程仓库页面,就看到你的新创建的文件了

 

 

 

 

第二种情况:从远程仓库克隆:

我们讲了先有本地库,后有远程库的时候,如何关联远程库。

现在,假设我们从零开发,那么最好的方式是先创建远程库,然后,从远程库克隆。

第一步,登陆GitHub,创建一个新的仓库,名字叫gitskills:

 

我们勾选Initialize this repository with a README,这样GitHub会自动为我们创建一个README.md文件。创建完毕

后,可以看到README.md文件:

 

 

第二步,远程库已经准备好了,下一步是用命令git clone克隆一个本地库:

 

 

在本地找一个你想存放这个远程仓库的目录,然后在本地命令行用git clone 命令来克隆这个远程库

 

1

2

3

4

5

6

7

8

9

10

11

$ git clone [email protected]:triaquae/gitskills.git

Cloning into 'gitskills'...

Warning: Permanently added the RSA host key for IP address '192.30.253.112' to the list of known hosts.

remote: Counting objects: 3, done.

remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0

Receiving objects: 100% (3/3), done.

Checking connectivity... done.

 

cd gitskills/  #进入刚clone下来的目录

ls

README.md

克隆下来之后,你就可以在这个目录下创建自己的工作内容了,创建的文件提交之后同样使用命令$ git push origin master #推到远程。

如果有多个人协作开发,那么每个人各自从远程克隆一份就可以了。

你也许还注意到,GitHub给出的地址不止一个,还可以用https://github.com/triaquae/gitskills.git 这样的地址。实际上,Git支持多种协议,默认的git://使用ssh,但也可以使用https等其他协议。

使用https除了速度慢以外,还有个最大的麻烦是每次推送都必须输入口令,但是在某些只开放http端口的公司内部就无法使用ssh协议而只能用https。

 

 

 

 

 

 

 

 

 

 

现在的情景是,你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举多得。

 

第一种情况:将本地仓库的内容上传给远程仓库:

第一步,登陆GitHub,然后,在右上角找到“New repository”按钮,创建一个新的仓库:

 

 

 

创建好的仓库

 

 

目前,在GitHub上的这个oldboy_website仓库还是空的,GitHub告诉我们,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库。

第二步,我们根据GitHub的提示,在本地已有的git_trainning仓库(即当前git_trainning目录)下运行命令:

 

$ git remote add origin [email protected]:triaquae/oldboy_website.git #添加远程仓库

 

有时会出现错误提示:fatal: remote origin already exists.

解决办法如下:

    1、先输入$ git remote rm origin

    2、再输入$ git remote add origin [email protected]:djqiang/gitdemo.git 就不会报错了!

 

来自

 

$ git push -u origin master #推到远程

 

The authenticity of host 'github.com (192.30.253.113)' can't be established.

RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.

Are you sure you want to continue connecting (yes/no)? yes   #第一次推会出现,写yes

Warning: Permanently added 'github.com,192.30.253.113' (RSA) to the list of known hosts.

Counting objects: 20, done.

Delta compression using up to 8 threads.

Compressing objects: 100% (14/14), done.

Writing objects: 100% (20/20), 1.76 KiB | 0 bytes/s, done.

Total 20 (delta 4), reused 0 (delta 0)

remote: Resolving deltas: 100% (4/4), done.

To [email protected]:triaquae/oldboy_website.git

 * [new branch]      master -> master

Branch master set up to track remote branch master from origin.

 

请千万注意,把上面的triaquae替换成你自己的GitHub账户名,否则,你在本地关联的就是我的远程库,关联没有问题,但是你以后推送是推不上去的,因为你的SSH Key公钥不在我的账户列表中。

添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。

把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。

此时刷新远程仓库页面, 就看到了你刚从本地推上来的代码了

 

 

从现在起,只要本地作了提交,就可以通过命令:

 

$ git push origin master

what ? 不信?那帮你试一下吧

创建一个index.html文件,同时上传到远程

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

$ vim index.html

$ git add .

$ git commit -m "add home page"

 

[master 8675486] add home page

 1 file changed, 6 insertions(+)

 create mode 100644 index.html

 

$ git push origin master #推到远程

 

Counting objects: 3, done.

Delta compression using up to 8 threads.

Compressing objects: 100% (3/3), done.

Writing objects: 100% (3/3), 362 bytes | 0 bytes/s, done.

Total 3 (delta 0), reused 0 (delta 0)

To [email protected]:triaquae/oldboy_website.git

   03df00a..8675486  master -> master

 

然后刷新下远程仓库页面,就看到你的新创建的文件了

 

 

 

 

第二种情况:从远程仓库克隆:

我们讲了先有本地库,后有远程库的时候,如何关联远程库。

现在,假设我们从零开发,那么最好的方式是先创建远程库,然后,从远程库克隆。

第一步,登陆GitHub,创建一个新的仓库,名字叫gitskills:

 

我们勾选Initialize this repository with a README,这样GitHub会自动为我们创建一个README.md文件。创建完毕

后,可以看到README.md文件:

 

 

第二步,远程库已经准备好了,下一步是用命令git clone克隆一个本地库:

 

 

在本地找一个你想存放这个远程仓库的目录,然后在本地命令行用git clone 命令来克隆这个远程库

 

1

2

3

4

5

6

7

8

9

10

11

$ git clone [email protected]:triaquae/gitskills.git

Cloning into 'gitskills'...

Warning: Permanently added the RSA host key for IP address '192.30.253.112' to the list of known hosts.

remote: Counting objects: 3, done.

remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0

Receiving objects: 100% (3/3), done.

Checking connectivity... done.

 

cd gitskills/  #进入刚clone下来的目录

ls

README.md

克隆下来之后,你就可以在这个目录下创建自己的工作内容了,创建的文件提交之后同样使用命令$ git push origin master #推到远程。

如果有多个人协作开发,那么每个人各自从远程克隆一份就可以了。

你也许还注意到,GitHub给出的地址不止一个,还可以用https://github.com/triaquae/gitskills.git 这样的地址。实际上,Git支持多种协议,默认的git://使用ssh,但也可以使用https等其他协议。

使用https除了速度慢以外,还有个最大的麻烦是每次推送都必须输入口令,但是在某些只开放http端口的公司内部就无法使用ssh协议而只能用https。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(Python学习)