美文网首页
git从小白开始——远程仓库

git从小白开始——远程仓库

作者: 108N8 | 来源:发表于2017-03-28 15:21 被阅读218次

    要使用远程仓库,我们就要去github注册一个帐号。当然自己手动搭建一个服务器也行。

    一、创建远程仓库

    1. 配置

    第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Git Bash,创建SSH Key:

    $ ssh-keygen -t rsa -C "datura_lj@163.com"
    

    创建SSK Key如下:


    文件目录如下图:

    如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
    第2步:登陆GitHub,打开“settings”,“Personal settings => SSH and GPG keys”页面:
    然后,点“New SSH key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:

    GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。
    2. 添加远程库

    首先,我们需要在github上创建一个库,流程如下:



    填写一些简单的项目信息:



    目前,在GitHub上的这个learngit仓库还是空的,GitHub告诉我们,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库。
    $ git remote add origin git@github.com:datura-lj/learnGit.git
    //注意datura-lj/learnGit.git是我的项目地址
    

    通过git push命令将把当前分支master内的文件同步到远程仓库。如下

    $ git push -u origin master
    //-u 是设置了本地master与远程仓库的master关联起来,以后git push就好
    

    之后我们在远程仓库中可以看到文件:

    注意:第一次用pc连接远程仓库的时候有坑
    坑一:显示连接不上远程仓库
    解决:Are you sure you want to continue connecting (yes/no)? 这里的时候要选“yes”
    $ git push -u origin master
    The authenticity of host 'github.com (192.00.250.002)' can't be established.
    RSA key fingerprint is SHA256:xxxxx.
    Are you sure you want to continue connecting (yes/no)?  **这里一定要写yes
    Host key verification failed.
    fatal: Could not read from remote repository.
    
    Please make sure you have the correct access rights
    and the repository exists.
    

    坑二:远程仓库以存在
    解决:手动删除远程仓库($ git remote rm origin),然后再次创建连接


    如果执行 git remote rm origin 报错的话,我们可以手动修改gitconfig文件的内容

    把 [remote “origin”] 那一行删掉就好了。
    3. 从远程库克隆

    用git clone命令从远程仓库克隆。

    $ git clone git@github.com:datura-lj/learnGit.git
    

    如果有多个人协作开发,那么每个人各自从远程克隆一份就可以了。
    GitHub给出的地址不止一个,还可以用https://github.com/datura-lj/learnGit.git这样的地址。实际上,Git支持多种协议,默认的git://使用ssh,但也可以使用https等其他协议。 使用https除了速度慢以外,还有个最大的麻烦是每次推送都必须输入口令,但是在某些只开放http端口的公司内部就无法使用ssh协议而只能用https。

    ps:当然如果你“嫌麻烦”也可用github客户端(或其他客户端工具)来克隆。

    下面我们在本地仓库新建了一个index.html的文件。
    并通过git add => git commit => git push origin master来进行同步到远程仓库。现在来注双色球

    ps:再次吐槽一波,以前我写的本地上传博客到服务其那个不能用了,因为github把创建一个空白页面的功能去掉了。但是你看到这里就会发现,咦咦咦,我们明明可以通过更高大上的方式——linux命令去上传啦~~

    未完待续...

    相关文章

      网友评论

          本文标题:git从小白开始——远程仓库

          本文链接:https://www.haomeiwen.com/subject/skkjottx.html