Git教程第8篇-远程仓库GitHub的使用

2019-10-18 08:11:25   Git

大家肯定都听说过大型同性交友网站:GitHub,那么GitHub到底是啥,跟Git啥关系呢。其实Git只是个工具,GitHub充当的是一个仓库的角色,当然我们自己的电脑也可以作为Git仓库,虽然Git是分布式是去中心化,但是大家如果合作开发,肯定还是要有一个公共仓库方便一些,GitHub就是这样的一个大型的远程仓库,其实可以想象成跟你自己电脑差不多,只不过它大一点,往这个仓库提交代码的人比往你电脑提交代码的人多,仅此而已。当然,这种大型远程仓库不仅仅是GitHub,还有很多其他的就不一一列举了(才不给他们打免费广告呢~)

我们就用GitHub来举例,说一下远程仓库怎么玩。先去注册个账号,登录老衲的GitHub,po一张自己帅气的照片,然后寻找漂亮小姐姐,握草,怎么都是男的,注销GitHub,永不再用,再见!

开玩笑,后面是脑补的,到登录GitHub就好了,照片都不用,也没小姐姐看你,哈哈。

创建远程仓库

我们找一下界面上应该有个绿绿的按钮写了个new,美其名曰 Create a new repository,当然找不到也没关系,访问这个链接 https://github.com/new ,然后就出现了如下气势磅礴的画面:

file

给自己项目起个高大上的名字(但是你要老实点,别整特殊符号,英文、数字、下划线、减号这种就够了),然后写一段牛逼狂拽吊炸天的描述(这段可以放肆一点),最后点最下面的绿绿的按钮,就创建好仓库了。

file

注意上方有个httpsssh的选项,分别对应两个不同的链接,下面的文本也会随之变化。这是两种访问远程仓库的方式,ssh需要先配置公钥,配置好之后就自动通过非对称加密的方式验证身份了,https不用事前配置啥,但是每次要输入账号密码。通常还是用ssh的方式。

下面有三个操作提示,我们主要看前两个,第一个是说,你本地没有仓库,然后教你创建一个,然后关联到远程仓库,然后推代码到远程仓库;第二个是说,你本地有个仓库了,直接关联远程仓库,然后推送。其实我们细细查看第一个的前几行命令,不就是我们之前说的创建仓库、创建文件、git add、git commit吗,索性我们就用之前的项目,直接添加远程地址,然后推送就好了。

回到之前的learngit项目里,添加远程地址

git remote add origin git@github.com:luvvien/learngit.git

push之前,我们要有自己的身份,在第一篇教程的时候设置过了,就像这样设置过:

git config --global user.name "Your Name"
git config --global user.email "email@example.com"

刚刚还提到,ssh的方式需要配置公钥来进行身份认证,先看一下我们有没有公钥:

cat ~/.ssh/id_rsa.pub

如果提示你找不到文件,那就要生成一对公钥私钥了,如果显示一长串字符,那恭喜你,可以直接用它。

生成方法:https://help.github.com/articles/generating-an-ssh-key/

然后添加公钥 https://github.com/settings/ssh/new,给公钥七个名儿,然后把那一长串粘贴进去,然后点绿绿的按钮添加即可

file

好了,没问题的话就可以提交了:

git push -u origin master

其中 origin 是远程仓库名字,master 是分支名字,这行命令就是要推送到 origin 的 master 分支上。而 origin 就是我们上面执行 git remote add origin git@github.com:luvvien/learngit.git 的时候给起的名字,当然你也可以在添加的时候把 origin 改成 wozuiniubi ,像这样:

git remote add wozuiniubi git@github.com:luvvien/learngit.git

然后你就可以

git push -u wozuiniubi master

这样就可以根据名字不同添加多个远程仓库了。

从远程仓库克隆

当然远程库的意义就在于大家一起用一起玩耍嘛,当然你也可以clone别人public的项目,我就是你眼中的别人,你自然可以通过以下命令clone我的仓库:

git clone git@github.com:luvvien/learngit.git
viencoding.com版权所有,允许转载,但转载请注明出处和原文链接: https://viencoding.com/article/229
欢迎小伙伴们在下方评论区留言 ~ O(∩_∩)O
文章对我有帮助, 点此请博主吃包辣条 ~ O(∩_∩)O

猜你喜欢


评论

There are no comments yet.
未登录

登录后即可发表评论

登录或注册

标签

AdSense Anaconda Android apache API apt Auth AWS B-tree Bandwagon Blog bower brew bytes Caffe Catalina certbot Charles cloudcone Composer conda CoreML CPU crontab CSS csv Cuda cv2 datetime Digitalocean DNS Docker Docker-Compose Eloquent Excel export Flask FTP GET Git GitHub GitLab Gmail GoDaddy Google GTM hash Homebrew Homestead HTML http HTTPS IDEA image imagemagick imagick imgick import InnoDB ios iou iPhone ISO8601 iTerm2 Java JavaScript JPG JS Keras Laravel Laravel-Admin lazyload Linux list Livewire lnmp load logs Lravel Mac Markdown matplotlib md5 mix MobileNet Mojave mongo MongoDB MySQL Namesilo Nginx Node npm numpy Nvidia Nvidia-Docker onevps OpenCV Openpose openpyxl oss Outline parse PayPal PHP php-fpm PhpStorm PHP扩展 PIL Pillow pip PNG POST Protobuf PyCharm pyenv pymongo Python Python,人工智能,机器学习,VOC,xml Queue Redis requests RGB Sanctum save selenium SEO Shadowsock Shadowsocks ShadowsocksR simplemde Spring Boot SQLServer ssd SSH ssl SSL证书 SSR str Sublime sudo swap Swift Tensorflow TensorflowLite Terminal Terminator timestamp Ubuntu urllib UTC v2ray Valet Validation Validator VienBlog virtualenvs VPN VPS Vultr Web Windows WordPress Xcode xlsx yaml YAPI YUV zip zmq zsh 上网 下载图片 主从同步 云主机 云存储 云开发 云服务器 人工智能 优化 优惠码 伪原创 作弊与反作弊 免费ss账号 免费提现 切片 前端 加密 协议 博客 友链 双击事件 后台运行 后端 命令 国内镜像源 图标 图片操作 图片转换 域名 多身份认证 大小写转换 姿态检测 安卓模拟器 安装 定时任务 定时执行 密码 密钥 导出导入 小程序码 延迟加载 异常 微信 微信小程序 快捷方式 慢查询 懒加载 提现 搜索引擎 搬瓦工 搭梯子 教程 数据库 数据重复 文件上传 无法登录 日志 日期 时区 时间 时间戳 服务器 机器学习 权限 梯子 模拟浏览器 港版支付宝 漏洞 爬虫 生活服务 用户管理 病毒 登录 目标检测 科学上网 系统升级 索引 组件 组件开发 编辑器 自动付款 自定义组件 英文伪原创 计划任务 计算机视觉 订阅通知 认证 语法 读写分离 远程连接 配置文件 重定向 错误异常 错误提示 队列 阿里云 香港 香港手机号
亲情非友情链接