Git托管

前面的话

  本文将主要介绍如何使用Github来托管Git服务

SSH

  大多数Git服务器都会选择使用SSH公钥来进行授权。系统中的每个用户都必须提供一个公钥用于授权

  首先先确认一下是否已经有一个公钥了。SSH公钥默认储存在账户的主目录下的~/.ssh目录

  有.pub后缀的文件就是公钥,另一个文件则是密钥

  假如没有这些文件,或者干脆连.ssh目录都没有,可以用ssh-keygen来创建

  现在,删除.ssh目录,对SSH重新生成

  下面使用ssh-keygen命令来创建SSH,这里需要把邮件地址换成自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码

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

  SSH的公钥如下所示:

  接下来,登陆GitHub,打开“Settings”,“SSH Keys”页面

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

  点击"Add SSH key"按钮后,结果如下所示:

  为什么GitHub需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送

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

  在GitHub上托管的Git仓库,任何人都可以看到,但是只有你自己才能修改。所以,不要把敏感信息放进去

添加本地库

  下面添加一个名称为‘mygit‘的本地库,工作目录下有一个名称为‘a.txt‘的文件,其内容是‘111‘,并被提交

添加远程库

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

  下面要建立一个名称为‘learngit‘的仓库,由于事先已经添加过了。所以,先把其删除

  进入‘learngit‘的仓库界面,找到‘Settings‘按钮

  在页面最下方,找到‘Delete this repository‘按钮

  点击该按钮后,输入要删除的仓库名称,点击‘I understand the consequences, delete this reposiytory‘按钮即可删除

  接下来,重新添加名称为‘learngit‘的仓库。点击右上角‘+‘号弹出的‘New repository‘

  输入仓库名称Repository name为‘learngit‘,仓库介绍Description为‘learn git‘,点击‘Create repository‘按钮,即可添加成功

  添加成功后,弹出如下界面。目前,在GitHub上的这个‘learngit‘仓库还是空的,GitHub告诉我们,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库

  接下来,需要对远程库‘learngit‘和本地库‘mygit‘进行关联

$ git remote add origin [email protected]:【GitHub帐号名】/【远程库的名称】.git

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

  如果已经进行了关联,或者关联错了,则需要先删除关联

$ git remote rm origin

  删除后,重新添加关联

  接下来,把本地库‘mygit‘里的所有内容推送到远程库‘learngit‘中

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

  由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送到远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令

  推送成功后,可以立刻在GitHub页面中看到远程库的内容已经和本地一模一样

  从现在起,只要本地作了提交,就可以通过以下命令,把本地master分支的最新修改推送至GitHub

$ git push origin master

克隆远程库

  前面我们介绍先有本地库,后有远程库的情况。现在,假设我们从零开发,那么最好的方式是先创建远程库,然后,从远程库克隆

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

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

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

$ git clone [email protected]:【GitHub用户名】/【Github远程库名称】.git

  在本地电脑的D盘新建一个名称为‘b‘的目录,然后将远程库克隆到本地

  此时,本地已经有gitskills目录,在该目录下已经有README.md文件了

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

时间: 2024-08-28 16:46:50

Git托管的相关文章

如何更换git托管

有时候会遇到需要更换代码托管平台,从github,gitlab或者Bitbucket迁移到其它平台,过程中可能遇到不少问题,本文从是否保留历史提交记录两种需求出发,介绍一下基于git托管平台的迁移方法. 一.要求保留所有的提交记录的迁移方法 1.从旧的托管仓库中克隆一个裸版本库. git clone –bare git://github.com/yourname/src_project.git --bare:克隆一个裸版本库. 裸版本库的名字一般用原来的仓库名加上.git后缀,它不包含工作区,直

代码管理git托管到码云(github)开源中国

1.注册码云账号https://git.oschina.net/signup 2.登陆码云,账号cjq685286 3.新建项目 4.创建项目 5.项目创建成功 6.使用myeclipse2014将测试项目分享 右键项目->team->Share Project 7.Finish完成之后,项目会发生一些变化.表示我们没有将数据提交到仓库中,下面将代码提交到本地仓库. 右键项目->team->Commit 8.提交后本地项目名称后面会出现master,项目中会出现圆桶形状,表示与本地

使用GOGS搭建自己的Git托管

大家在开发中一般使用的git服务都是公司搭建好的,或者就是直接用gayhub提供的免费的仓库 如果想搭建一个自己的仓库的话怎么弄,这里给大家安利一款开箱即用的git托管服务:gogs. gogs是基于Golang编写的,占用的资源非常的低,你有个树莓派就能跑,而且搭建非常容易,接下来开始演示如何搭建. 操作环境:阿里云ECS服务器配置:单核2GB内存 :操作系统: CentOs 7 x64 注:本文操作全部基于yum进行安装,其他操作系统可自行更换对应指令 第一步:安装git 命令 yum in

免费GIT托管

http://www.gitcentral.com http://www.projectlocker.com http://gitfarm.appspot.com http://code.google.com/hosting/ http://offers.assembla.com/free-git-hosting/ http://bitbucket.org

iOS开发:(git项目托管)的使用

git托管网站是一个非常强大的网站,通过这个网站我们可以讲自己写出来的优秀的代码发布在这个网站上,通过这个网站我们可以对自己的代码进行推送,版本更新.好了,不多说了,我要总结一下git的使用流程. 1.登陆开源中国社区网站http://www.oschina.net 2.如果有账号和密码就可以登录,没有的话就先注册一个账号和密码 3.注册新用户成功后,下一步 4.现在需要做的就是登陆你的邮箱,激活账号,激活之后就可以登录了 5.登陆成功之后你可以完善你的资料,做下一步的工作了. 6.新建一个项目

Git使用之-第三方托管oschina

一.git 简介 1.Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 2.Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理. 3.Git 是由“Linux之父” Linus Torvalds 创建的.因为他发现找不到满意的方案来管理 Linux Kernel 联合开发的版本控制,就自己写了 Git. 说到优势,那么自然是相对与SVN而言的 版本库本地化,支持离线提交,相对独立不影响协同开发.每个开发者都拥有自己的版本控制库

Git Shell 基本命令(官网脱水版)

用户信息 当安装完 Git 应该做的第一件事就是设置你的用户名称与邮件地址. 这样做很重要,因为每一个 Git 的提交都会使用这些信息,并且它会写入到你的每一次提交中,不可更改: $ git config –global user.name “John Doe”$ git config –global user.email [email protected] 获取命令帮助 $ git help verb$ git verb help$ man git-verb 检查配置信息 如果想要检查你的配置

Git Step by Step – (4) 探索.git目录

前面一篇文章介绍了Git对象模型,接下来我们就进入".git"目录看看到底有什么东西,目录中哪些东西又跟Git对象模型相关.结合这个目录,我们将进一步了解Git的工作原理. .git目录 下面就开始进入.git目录了,通过"ls"命令可以看到.git目录中的文件和子目录: 对于这些文件和目录,下面给出了一些基本的描述.在后面后有logs.objects.refs.index和HEAD更详细的介绍 (D) hooks:这个目录存放一些shell脚本,可以设置特定的gi

在win7系统下使用TortoiseGit(乌龟git)简单操作[email protected]

非常感谢OSC提供了这么好的一个国内的免费的git托管平台.这里简单说下TortoiseGit操作的流程.很傻瓜了 首先你要准备两个软件,分别是msysgit和tortoisegit,乌龟还可以在下载页面下载简体中文语言包. 下载后分别安装好,如果不熟悉,可以使用默认设置. 接下来我们就开始搭建本地与[email protected]的桥梁了. 首先将乌龟设置成中文,右键菜单TortoiseGit->settings->language选择中文 自己找到这个,打开后,点Generate 耐心等