美文网首页
git-远程仓库

git-远程仓库

作者: 脏脏包盛 | 来源:发表于2018-09-06 16:56 被阅读0次

ssh ssh-keygen -t rsa -C "youremail@example.com" 生成SSH key
git remote add origin git@server-name:path/repo-name.git 关联远程库,
git remote remove origin 远程关联取消
git push -u origin master 关联后使用该命令第一次推送master分支的所有内容
git push origin master 此后使用该命令推送最终修改
git clone git@github.com:michaelliao/gitskills.git 克隆远程库中内容

建立ssh key

填入你的真实mail

$ ssh-keygen -t rsa -C "youremail@example.com"

如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:


image.png

然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:

为什么GitHub需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。
当然,GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。
在GitHub上免费托管的Git仓库,任何人都可以看到喔(但只有你自己才能改)。所以,不要把敏感信息放进去。
如果你不想让别人看到Git库,有两个办法,一个是交点保护费,让GitHub把公开的仓库变成私有的,这样别人就看不见了(不可读更不可写)。另一个办法是自己动手,搭一个Git服务器,因为是你自己的Git服务器,所以别人也是看不见的。这个方法我们后面会讲到的,相当简单,公司内部开发必备。

添加远程库

首先,登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库:在Repository name填入learngit,其他保持默认设置,点击“Create repository”按钮,就成功地创建了一个新的Git仓库:

现在,我们根据GitHub的提示,在本地的learngit仓库下运行命令:

$ git remote add origin git@github.com:michaelliao/learngit.git

michaeliao为你的github账户名,learngit.git为你在github的项目名
本地内容推送

$ git push -u origin master
Counting objects: 20, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (15/15), done.
Writing objects: 100% (20/20), 1.64 KiB | 560.00 KiB/s, done.
Total 20 (delta 5), reused 0 (delta 0)
remote: Resolving deltas: 100% (5/5), done.
To github.com:michaelliao/learngit.git
 * [new branch]      master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'

git push 把 master分支推送到远程,-u在第一次建立链接的时候使用。使用-u Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。


image.png

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

$ git push origin master

SSH警告

当你第一次使用Git的clone或者push命令连接GitHub时,会得到一个警告:

The authenticity of host 'github.com (xx.xx.xx.xx)' can't be established.
RSA key fingerprint is xx.xx.xx.xx.xx.
Are you sure you want to continue connecting (yes/no)?

这是因为Git使用SSH连接,而SSH连接在第一次验证GitHub服务器的Key时,需要你确认GitHub的Key的指纹信息是否真的来自GitHub的服务器,输入yes回车即可。
Git会输出一个警告,告诉你已经把GitHub的Key添加到本机的一个信任列表里了:

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

这个警告只会出现一次,后面的操作就不会有任何警告了。
如果你实在担心有人冒充GitHub服务器,输入yes前可以对照GitHub的RSA Key的指纹信息是否与SSH连接给出的一致。

从远程库克隆

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


image.png

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


image.png
现在,远程库已经准备好了,下一步是用命令git clone克隆一个本地库:
$ git clone git@github.com:michaelliao/gitskills.git
Cloning into 'gitskills'...
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 3
Receiving objects: 100% (3/3), done.

注意把Git库的地址换成你自己的,然后进入gitskills目录看看,已经有README.md文件了:

$ cd gitskills
$ ls
README.md

相关文章

  • 2021-11-11

    android studio 导入远程仓库步骤 vcs->git->clone

  • git-远程仓库

    ssh ssh-keygen -t rsa -C "youremail@example.com" 生成SSH ke...

  • git-远程仓库使用

    git远程仓库使用 官方文档 要参与任何一个 Git 项目的协作,必须要了解该如何管理远程仓库。远程仓库是指托管在...

  • git-关联远程仓库

  • Git-查看当前的远程仓库

    要查看当前配置有哪些远程仓库,可以用git remote命令,它会列出每个远程库的简短名字。(一般有个默认的ori...

  • git-同步远程仓库、删除分支

    同步远程仓库 在做项目时,会遇到以下两种情况需要本地同步远程仓库的更改。 情形一 有时候一些分支在远程已经删除了,...

  • 2019-03-07

    Git-分布式版本控制系统 1.安装 2.创建仓库 3.添加文件 4.时光机 5.远程 github-flow L...

  • git-将本地仓库与远程仓库关联

    步骤一:首先在github上创建一个新的仓库。 步骤二:cd 到需要创建本地仓库的目录下。 步骤三:创建本地仓库。...

  • 使用Docker安装GitLab

    注意:确保安装docker成功 我们知道Git远程仓库分为公有远程仓库和私有远程仓库。 私有远程仓库 远程仓库实际...

  • Git 跳崖指南

    远程仓库配置 初始化远程仓库,增加远程仓库地址 增加一个远程仓库 分享

网友评论

      本文标题:git-远程仓库

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