Git没有像SVN那样的中央服务器。
目前,我们使用的所有Git命令都在本地执行。如果你想通过Git分享你的代码或者和其他开发者合作。您需要将数据放在其他开发人员可以连接的服务器上。
添加远程库
要添加新的远程仓库,您可以指定一个简单的名称以供将来参考。命令格式如下:
Git remote add [shortname] [url]这个例子以Github作为远程仓库。如果你没有Github,你可以在https://github.com/,官方网站注册。
因为您的本地Git存储库和GitHub存储库之间的传输是由SSH加密的,所以我们需要配置验证信息:
使用以下命令生成SSH密钥:
$ ssh-keygen-t RSA-c \ ‘ your email @ example.com \ ‘后面的your_email@youremail.com改为你在github上注册的邮箱地址,然后会要求你确认路径并输入密码。我们可以一直使用默认的回车。如果成功,则。ssh文件夹将在~/下生成。进去,打开id_rsa.pub,复制里面的密钥。
回到github,输入Account=Settings。
选择左侧的SSH和GPG密钥,然后点按“新建SSH密钥”按钮。title设置标题,你只需填写并粘贴你电脑上生成的密钥即可。
添加成功后,界面如下所示
要验证是否成功,请输入以下命令:
$ ssh -T git@github.comHi天齐信!您已经成功认证,但是Github不提供shell访问。以下命令表示我们已经成功连接到github。
登录后,点击“新建存储库”,如下图所示:
之后,在存储库名称中填写runoob-Git-test(远程存储库名称),保留其他默认设置,然后单击“创建存储库”按钮,成功创建一个新的Git存储库:
成功创建后,将显示以下信息:
以上信息告诉我们,可以从这个仓库克隆一个新的仓库,或者将本地仓库的内容推送到GitHub仓库。
现在,根据GitHub的提示,我们在本地仓库下运行命令:
$ mkdir runoob-Git-test #创建测试目录$ cd runoob-git-test/#进入测试目录$ echo \’# Git test for菜鸟教程\ README.md #创建README.md文件并写入内容$ ls #查看目录中的文件README $ Git init # Initialize $ Git Add README.md #添加文件$ git commit -m \ ‘添加README.md文件\ #提交并评论信息[master (root-commit) 0205aab]添加README . MD文件1文件已更改, 1 insertion()create mode 100644 readme . MD #提交给github $ git remote add origin it @ GitHub . com 3360 tianqixin/Run OOB-git-test . git $ git push-u origin master下面的命令应该按照你在GitHub中成功新建仓库的地方复制,而不是按照我提供的命令复制,因为我们的GitHub用户名不一样,仓库名也不一样。
接下来,我们返回Github创建的仓库,我们可以看到文件已经上传到Github:
查看当前远程库
要查看当前配置了哪些远程仓库,可以使用命令:
Git远程实例
$ git remote origin $ git remote-vori gin git @ github . com 3360 tianqixin/run OOB-git-test . git(fetch)origin it @ github . com 3360 tianqixin/run OOB-git-test . git(push)使用-v参数执行。
选择远程仓库
Git有两个命令可以从远程存储库中提取更新。
1.从远程仓库下载新的分支和数据:
Git fetch在这个命令被执行之后,你需要执行Git合并远程分支到你的分支。
2.从远程仓库提取数据,并尝试将其合并到当前分支:
Git merge这个命令是在执行完git fetch之后立即执行git merge远程分支到你所在的任何分支。
假设你配置了一个远程仓库,你想提取更新的数据,可以先执行Git fetch [alias]告诉Git获取你没有的数据,然后可以执行git merge [alias]/[branch]将服务器上的任何更新(假设此时有人推送到服务器上)合并到你当前的分支中。
接下来我们在Github上点击\’ README.md\ ‘在线修改3360。
然后我们在本地更新修改。
$ git获取originremote:计数对象: 3,搞定压缩对象: 100% (2/2),完成。远程:总计3(增量0),重用0(增量0),打包-重用0解包对象: 100% (3/3),完成.来自github。com :天启信/runoob-git-test 0205aab.febd8ed主设备-来源/主设备以上信息\’0205aab.febd8ed主-原始/主\ ‘说明掌握分支已被更新,我们可以使用以下命令将更新同步到本地:
美元git合并原点/主更新0205aab.fed 8 edfast-forward自述文件。MD | 1 1个文件已更改,1个插入( )查看README.md文件内容:
$ cat README.md# Git测试## 第一次修改内容推送到远程仓库
推送你的新分支与数据到某个远端仓库命令:
饭桶推送[别名][分支]以上命令将你的[分支]分支推送成为[别名]远程仓库上的[分支]分支,实例如下。
$ touch runoob-test.txt #添加文件$ git添加runo ob-test。txt $ git commit-m \ ‘添加到远程\’master 69e702d]添加到远程一个文件已更改,0个插入( ),0个删除(-)创建模式100644运行OOB测试。txt$git推送原始母版#推送到开源代码库重新回到我们的开源代码库仓库,可以看到文件以及提交上来了:
删除远程仓库
删除远程仓库你可以使用命令:
饭桶远程rm [别名]实例
$ git remote-vori gin git @ github。运行OOB-git-test。git(fetch)origin git @ github。运行OOB-git-test。git(推送)#添加仓库origin 2 $ git remote添加origin 2 git @ github。运行OOB-git-test。git $ git remote-vori gin git @ github。运行OOB-git-test。git(fetch)origin git @ github。运行OOB-git-test。git(push)origin 2 git @ github。com :天齐信/运行ob-git-test。获取删除仓库origin 2 $ git remote RM origin 2 $ git remote-vori gin git @ github。运行OOB-git-test。git(fetch)origin git @ github。运行OOB-git-test。git(推送)
暂无讨论,说说你的看法吧