《GitHub详细教程》
《GitHub详细教程》 [ http://blog.csdn.net/tangbin330/article/details/9128765 ]
该博客主要是讲解Git仓库的操作方法和原理,不涉及GitHub。
GitHub的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡献代码非常简单:首先点击项目站点的“ fork”的按钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的“pull request”机制向项目负责人申请代码合并。已经有人将GitHub称为代码玩家的MySpace。
在GitHub进行分支就像在Myspace(或Facebook…)进行交友一样,在社会关系图的节点中不断的连线。【熟练掌握分支的概念】
自己创建仓库:lisuxuan1993/LearningGitHub
用户名:lisuxuan1993。密码:l0。
操作指令如下:
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/lisuxuan1993/LearningGitHub.git
git push -u origin master
1.在github上创建一个新的版本库
github首页,找到下图界面,点击“new repository”按钮:
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png
填下项目名称、描述、url等信息,然后提交。
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png
图中标红的一项的意思是只有付费用户才有私有库托管服务,在github上开源(public)项目托管是免费的。
这样一个新的版本库就创建完毕了。
接下来我们需要本地版本库和远程版本库(github上的)进行通信,还需要一些配置。
2.ssh配置
想要让本地版本库与远程版本库通信,需要配置下SSHkey。
2.1检查计算机上是否已经有SSH key
1. $ cd ~/.ssh
如果出现““No such file ordirectory”或类似的语句,说明缺少ssh的key。
2.2创建个新的SSH key
1. $ ssh-keygen -t rsa -C " your_email@youremail.com "
比如明河机子上的
1. $ ssh-keygen -t rsa -C " minghe36@126.com "
会出现类似下图的提示:
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image003.png
直接按下“enter”键即可,然后输入密码。
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image004.png
一切顺利的话,你可以查看下c:\Users\Administrator\.ssh\id_rsa.pub文件,复制里面的key码。
2.3增加ssh key到github上
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image005.png
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image006.png
留意并不需要填写title,github会自动生成,直接把复制的key黏贴到key输入框确定即可。
2.4配置下git的用户名和email
1. $ git config --global user.name "minghe"
2. $ git config --global user.email " minghe36@126.com "
配置结束。
3.本地版本库和远程版本库的通信
3.1克隆个远程版本库
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image007.png
“cdd:\git-test”切换到该目录。
3.2推送更新到远程版本库
先随意提交个文件到版本库
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image008.png
由于是克隆远程版本库,已经存在远程分支origin,无需再创建。
(PS:创建远程分支:git remote addorigin git@github.com :minghe/git-test.git)
查看远程分支情况,可以使用git branch -r命令。
推送修改到远程版本库:
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image009.png
git push命名将推送内容到远程服务器。
与之相反的命令就是git pull。
git 提交修改到github上
1,在GITHUB.com注册相应帐号,建立Repositories。
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image010.png
3,克隆GitHub项目
git clone git://github.com/xxx/xxx.git
注:要转到file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image011.png在进行git bash操作
4,分支的创建和合并
# git branch local
# git checkout local 切换到local
注:这里的分支是在本地,没有在github服务器上建立分支。
5, 在local分支进行开发,开发完成后与master分支合并
# git checkout master
# git merge local
# git branch -d local 合并完后删除local
6,
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image013.png
7,
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image015.png
注:这时github还没有我添加的文件如:
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image017.png
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image018.png
8,用$ git pull 获取现在master的最新更改。因为我对README.md 做了修改。
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image019.png
9,最后将修改的内容提交到github服务器上。
$ git push origin master
注:一般origin默认为你clone的Repositories如: [url=mailto:%E2%80% 9Dgit@github.com :xxx/new-project.git]” git@github.com :xxx/new-project.git[/url]” 也可以自
定义远程服务器别名origin
# git remote add origin git@github.com :xxx/new-project.git
最后成功。
file:///C:/Users/Youzh/AppData/Local/Temp/msohtmlclip1/01/clip_image021.png
《Spring软件的GitHub地址》
——The Spring Framework repository has moved to http://github.com/SpringSource/spring-framework.
See the readme there for details on working with Git, building the framework, etc.
ote that svn-based access is still available via GitHub's support for Subversion clients, e.g.:
N
$ svn checkout https://github.com/SpringSource/spring-framework
See https://github.com/blog/966-improved-subversion-client-support for more details.
—— http://projects.spring.io/spring-framework
《git - 简明指南》
[ http://rogerdudler.github.io/git-guide/index.zh.html ]
《给SVN泼盆冷水,是时候用GIT了》
[ http://www.jianshu.com/p/fa7eac6bb2b2 ]
作者:Terry_Wang。简介:我只是不想虚度光阴。充实和富有挑战,才是自己骨子里最本质的东西。我不
期望自己能改变别人的世界,但愿能改变自己的世界。日期:2013-12-31 。
没有要排除任何工具的意思,只是眼下最流行的“版本管理系统”非GIT莫属。
Git有什么不一样:
——SVN属于中心式的仓库管理,统一维护在Server端,而Git属于分布式的仓库管理,每个开发者都拥有自
己的本地仓库,并且每个仓库都是平等的。
——由于你自己本身就拥有仓库,那么Git在本地磁盘上就保存着所有有关当前项目的历史更新,并且Git中
的绝大多数操作都只需要访问本地文件和资源,不用连网,所以处理起来速度飞快。用SVN的话,没有网络
或者断开VPN你就无法做任何事情。但用Git的话,就算你在飞机或者火车上,都可以非常愉快地频繁提交
更新,等到了有网络的时候再上传到远程的镜像仓库。换作其他版本控制系统,这么做几乎不可能,抑或是
非常麻烦。
——并且Git中每个克隆(clone)的版本库都是平等的。你可以从任何一个版本库的克隆来创建属于你自己的
版本库,同时你的版本库也可以作为源提供给他人,只要你愿意。
——Svn?Svn是统一管理的好吧。开发时你的Boss说了算,说什么时候提交代码就什么时候提交代码,说
什么时候更新就统一更新,你觉得很爽?
——Git?Git的提交不会被打断,直到你的工作完全满意了,PUSH给他人或者他人PULL你的版本库,合并
会发生在PULL和PUSH过程中,不能自动解决的冲突会提示您手工完成。
——开源社区(比如 OSC@China )都采用了Git,而不是SVN。
Git for windows 和 msysGit:
这个你大致了解下就行,只是多一种选择,多一条路。msysGit的主页提供了两个项目:Git for Windows和msysGit,并写明了它们的详细区别。
个人认为,Git for Windows适合绝大多数程序猿(又见绝大多数),所以,强烈建议安装Git for Window。
msysGit使用一种很BT也很NB的方式来安装。先安装一个最小的MinGW/MSYS系统,然后使用git pull 所有的源码,调用gcc在本地编译成可执行文件。
《GitHub详细教程》相关推荐
- ComeFuture英伽学院——2020年 全国大学生英语竞赛【C类初赛真题解析】(持续更新)
视频:ComeFuture英伽学院--2019年 全国大学生英语竞赛[C类初赛真题解析]大小作文--详细解析 课件:[课件]2019年大学生英语竞赛C类初赛.pdf 视频:2020年全国大学生英语竞赛 ...
- ComeFuture英伽学院——2019年 全国大学生英语竞赛【C类初赛真题解析】大小作文——详细解析
视频:ComeFuture英伽学院--2019年 全国大学生英语竞赛[C类初赛真题解析]大小作文--详细解析 课件:[课件]2019年大学生英语竞赛C类初赛.pdf 视频:2020年全国大学生英语竞赛 ...
- 信息学奥赛真题解析(玩具谜题)
玩具谜题(2016年信息学奥赛提高组真题) 题目描述 小南有一套可爱的玩具小人, 它们各有不同的职业.有一天, 这些玩具小人把小南的眼镜藏了起来.小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的 ...
- 信息学奥赛之初赛 第1轮 讲解(01-08课)
信息学奥赛之初赛讲解 01 计算机概述 系统基本结构 信息学奥赛之初赛讲解 01 计算机概述 系统基本结构_哔哩哔哩_bilibili 信息学奥赛之初赛讲解 02 软件系统 计算机语言 进制转换 信息 ...
- 信息学奥赛一本通习题答案(五)
最近在给小学生做C++的入门培训,用的教程是信息学奥赛一本通,刷题网址 http://ybt.ssoier.cn:8088/index.php 现将部分习题的答案放在博客上,希望能给其他有需要的人带来 ...
- 信息学奥赛一本通习题答案(三)
最近在给小学生做C++的入门培训,用的教程是信息学奥赛一本通,刷题网址 http://ybt.ssoier.cn:8088/index.php 现将部分习题的答案放在博客上,希望能给其他有需要的人带来 ...
- 信息学奥赛一本通 提高篇 第六部分 数学基础 相关的真题
第1章 快速幂 1875:[13NOIP提高组]转圈游戏 信息学奥赛一本通(C++版)在线评测系统 第2 章 素数 第 3 章 约数 第 4 章 同余问题 第 5 章 矩阵乘法 第 6 章 ...
- 信息学奥赛一本通题目代码(非题库)
为了完善自己学c++,很多人都去读相关文献,就比如<信息学奥赛一本通>,可又对题目无从下手,从今天开始,我将把书上的题目一 一的解析下来,可以做参考,如果有错,可以告诉我,将在下次解析里重 ...
- 信息学奥赛一本通(C++版) 刷题 记录
总目录详见:https://blog.csdn.net/mrcrack/article/details/86501716 信息学奥赛一本通(C++版) 刷题 记录 http://ybt.ssoier. ...
- 最近公共祖先三种算法详解 + 模板题 建议新手收藏 例题: 信息学奥赛一本通 祖孙询问 距离
首先什么是最近公共祖先?? 如图:红色节点的祖先为红色的1, 2, 3. 绿色节点的祖先为绿色的1, 2, 3, 4. 他们的最近公共祖先即他们最先相交的地方,如在上图中黄色的点就是他们的最近公共祖先 ...
最新文章
- mysql如何配置hbm.xml_配置数据库映射文件hbm.xml
- 关键字之defer、panic、recover
- 【若依(ruoyi)】按钮样式
- hill密码源代码c语言,古典密码(Hill加密算法)(示例代码)
- Hosting WCF in SharePoint 2007 (Part 1) 基本部署(转)
- c语言程序设计答案四,C语言程序设计练习四(参考答案)
- 搬运: CVonline: 图像数据库(二) (更新于20190821)
- CSS-animation-梦幻西游小案例
- “云界十年”——第十届中国云计算大会举行
- 东南大学计算机学院学办董烨,东南大学计算机教学实验中心(国家级)
- 使用PMW3901和VL53L1X 实现室内定点悬停
- pc端启用微信小程序
- 理不清薪酬,更心愁 穆穆-movno1
- Gateway整合Nacos前端请求报错404 NOT_FOUNT
- Kerberos双跳变通办法
- 也谈《人间正道是沧桑》中的破绽
- contec计算机主板说明书,PCA-6007 Rev.A1 PCA-6007LV Rev.A1 研华工控机主板
- 【Android】Retrofit基础源码分析
- 项目动态 | Apache Pulsar 2.7.3 版本介绍
- 爬虫爬虫 day2 爬取校网文章
热门文章
- Newdex Swap闪兑系统已通过PeckShield安全审计服务
- 学生党无线蓝牙耳机推荐哪个,2022口碑最好的蓝牙耳机推荐
- ZooKeeper学习笔记(八):ZooKeeper集群写数据原理
- 【教学类-30-02】10以内加法题不重复(一页两份)(包括6以内、7以内、8以内、9以内、10以内加法题 只抽取25个)
- 删除node_modules文件夹太慢
- 【报告分享】2021快手内容生态半年报-快手(附下载)
- springboot + shiro的配置
- 基于LVD、贝叶斯模型算法实现的电商行业商品评论与情感分析案例
- 一位非米粉关于小米的深度报告
- Linux运维-ip地址配置