Git ~ 大杀器之一 远程仓库 ~ Git
一般情况ixashi找一台电脑作为服务器的角色 , 每天24小时开机 , 其他扥每个人都从这个 “服务器” 仓库里面克隆一份到自己的电脑上面 并且将各自的提交推送到服务器仓库中 , 也可以从服务器仓库中拉去别人的提交 。
完全可以自己搭建一台运行Git的服务器 , 不过现阶段 , 为了学 Git 搭建一个服务器是完全没有必要的 , 好在这个世界上有一个叫做 Github 的神器网站 , 从名字上面就可以看出来 ,这个网站就是提供 Git 仓库托管服务的 , 所以只需要注册一个Github 账号就可以免费获得Git远程仓库 , 在继续阅读之前请先注册一个 Github 账号 ,由于你的本地Git仓库和Github仓库之间的传递是通过SSH加密的所以 有一点需要设置 。
第一步 : 创建 SSH key 。 在用户主目录下 看看有没哟 。ssh 目录 如果有 ,再看这个目录下有没有 id-rsa和id-ras.pub 这两个文件 ,
xpower@xpower-CW65S:~$ la -ah . .gnupg .test.swn .. .ICEauthority .test.swo 123 .idlerc .test.swp .adobe jack.py test.txt .ascii.py.swo learngit .viminfo .ascii.py.swp .local .w3m .asd .macromedia .wine .bash_history .mozilla workspace .bash_logout .mysql_history .Xauthority .bashrc .pki .xinputrc .cache .presage .xsession-errors .compiz .profile .xsession-errors.old .config .protocols.swp 公共的 .dbus .pypar2 模板 .deepinwine .python_history 视频 .dmrc .selected_editor 图片 DrClient .ssh 文档 .eclipse .sudo_as_admin_successful 下载 examples.desktop .swo 音乐 .gconf .swp 桌面 .gitconfig .swt
如果已经有了就可以直接跳到下一步 , 如果没有就打开shell创建 SSH key
ssh-keygen -t rsa -C "youremail@example.com"
你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。
如果一切顺利的话,可以在用户主目录里找到.ssh
目录,里面有id_rsa
和id_rsa.pub
两个文件,这两个就是SSH Key的秘钥对,id_rsa
是私钥,不能泄露出去,id_rsa.pub
是公钥,可以放心地告诉任何人。
第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:
然后,点“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账号后,我们就即将开始远程仓库的学习。