GitHub使用简介
1. 关于GitHub的常见使用方法,请参考官网上面的说明。本篇文档只是针对于常用的,而且容易犯错的用法进行说明。仅仅是个人观点。
2. 如何使用GitHub?
(1) 常用的是首先在GitHub上创建一个版本库,然后接下来的工作是在本机创建一个版本库,注意不一定要和原来那个版本的文件名相同。比如原来创建的版本为 HelloWorld,那么本机完全可以使用一个文件名为HelloRyan这样的文件夹。只是需要在后续操作中配置相应的信息即可。
(2) 本机创建文件夹后,需要进行Git的配置。首先git init来初始化一个版本库,然后需要建立和远程版本库的链接。这里使用git remote add命令来添加。
git remote add origin url
其中origin是你指定的url的别名,你完全可以取其他的名称。而url则是版本库信息对应的路径,这里在GitHub上面你创建的版本库上面,有一个SSH/HTTP/Git Read-Only这些选项,你需要的做的就是选择一个url,填写即可。比如
git remote add helloworld git@github.com:username/repname.git
(3) 建立起本机和远程的联系之后,还可以对Git进行简单配置,比如邮箱,用户名,比较工具啥的,由于本文不是初级教程,所以此部分内容略。详见官方文档。
(4) 本机进行工程开发,比如新建文件,然后提交。等等
(5) 保证和远程同步,因此需要将本机的版本库push到远程上去,为此使用:
git push origin branch
其中,origin就是刚刚取的别名,比如是helloworld,而后面的就是要推送到的分支名,比如master。具体就看你本机和远程的分支,对应的别名了。
(6) 完成了上述修改后,可能会在另外一个场合拉取代码,此时还是相同的步骤,创建一个文件夹,git init来初始化版本库,然后同样git remote add xxx xxx。
接下来的任务就是执行pull命令:git pull xxx branch(其中xxx就是前面的origin,helloworld这些别名)。
简单的用法就介绍到这里。
下面说说一些用到的体会,总结。
(1) 首先是关于git remote add xxx xxx这个用法。这个做法是取别名,避免了每次都要输入完整的路径名,当然,你也可以这么做,当然没问题。
比如:git pull url master,就是把远程的url这个拉取到本机的master分支上。
可是每次都这么做多麻烦,为此使用别名,以后就直接通过别名来push,pull。
实际上,昨晚这个工作后,会在.git目录下面的config文件中写入一个项,用来指示该别名的信息,如下所示:
[remote "origin"]
url = git@github.com:xxx/rep.git
fetch = +refs/heads/*:refs/remotes/origin/*
上面就是别名origin这个别名的信息。记录了目标远程版本库的地址。
(2) SSH方式还是HTTPS方式。
在版本库的SSH方式和HTTPS方式是不同的,具体来说就是url信息的不同,但是,实际的认证机制也是不同的。当建立了本机密钥之后,使用ssh方式实际上是不需要再次认证的,而https则每次需要输入密码。
比如,上面的url = git@github.com:xxx/rep.git使用的是ssh方式,那么我进入一个版本库中,push到远程的时候,是不需要输入用户名和密码的,这个只在你初始时候使用到。而如果我的url是以https方式来做的话,如url = https://xxxx,这样我在进行更新,push或者pull的时候,都会提示你输入GitHub的帐号和密码的。实际上,GitHub是鼓励使用 ssh方式的,在官方文档也有说明,不过对于无法使用ssh服务的地方来说,https又多了一种方式,给用户也带来了方便。
(3) 常用的命令和Git的使用似乎并不需要有太多的说明,但是要想掌握这个工具还是需要很大的尝试和努力。这里推荐下图形化使用工具 TGit(Windows)以及gitg(Linux)版本。通过图形化工具能够帮助我们熟悉提交图,掌握基本的操作,有时候图形化界面能够极大的方便我们操作,比如右键可以打Tag,查看分支,所有分支,Diff等等。
在Windows下面,先要安装Git程序,然后安装TGit,指定Git路径,此时可以利用Cygwin的命令行界面来操作Git,同时可以在右键菜单中使用TGit来查看提交图。
在Linux下面,就直接使用命令行来工作,同时利用gitg等图形化工具来观察提交图等。
(4) 协同工作。在GitHub上面有很多开源项目可以参与到开发学习,可以搜索相关项目,fork该项目,然后在自己的版本库中就会出现,此时通过pull可以更新到本机,然后再进行开发,当你开发之后push上去,再通过向开发者发送请求让其了解到你进行的修复,然后他根据自己的判断是否采纳,更新版本库来决定是否让你的这次提交并入到版本库中。

(4)更多关于Github的使用请参见官网:https://github.com,里面讲述了如何从建立版本库到创建分支,管理版本库的知识。

原文:http://www.cppblog.com/deercoder/archive/2011/11/13/160050.html

【GitHub】 github如何使用相关推荐

  1. [github] github入手教程

    [github] github入手教程 简单的介绍一下Github的基本操作. 主页:https://github.com/ 首先自然是在GitHub注册一个帐号了.然后开始正文吧. Git基本介绍 ...

  2. android 搜索框 github,Github上Android简单好用的提示框推荐 | 夕辞

    Android开发过程中经常会用到消息提示的Dialog,有人可能会用AlterDialog等,在这里推荐一个github上比较好用的提示Dialog组件:SimpleTipDialog. 用法比较简 ...

  3. Git的使用-将本地项目上传至Github/Github下载代码至本地-MAC

    一.使用的工具 安装Git iTerm 二.初始化操作 1.在github上创建新仓库 登录后,主页点击New repository 输入仓库名(description等可自行根据需求添加) 注意:仓 ...

  4. linux 搭建github,github在linux上的环境搭建-Go语言中文社区

    Centos版 1.git的安装: yum  install  git yum  的配置详见:http://blog.csdn.net/qq_32345239/article/details/5243 ...

  5. github(GitHub Flavored Markdown)

    2019独角兽企业重金招聘Python工程师标准>>> https://github.com/isaacs/github-flavored-markdown 转载于:https:// ...

  6. linux开源项目github,GitHub 上的优质 Linux 开源项目,真滴牛逼!

    作为一名互联网人,提起 Linux 大家都不陌生,尤其是日常跟 Linux 操作系统打交道最多的,最熟悉不过了.互联网上关于 Linux 相关的教程和资料也非常的多,但是当你从中筛选出真正对自己有帮助 ...

  7. android录制mp3 github,GitHub - understanding/AndroidMP3Recorder: 为Android提供MP3录音功能[持续维护版]...

    AndroidMP3Recorder 项目介绍 本项目Fork自AndroidMP3Recorder,由于原作者停止维护,此项目是我fork下主分支来维护的.相比原项目,此项目支持以下功能: 修复部分 ...

  8. php随机图片github,GitHub - diudiuhaha/Random-Image: 随机图片服务

    前言 写文章想要配图,但是懒得挑图? 网页背景千遍一律? 最早的时候,经常听说"漫月API",就很好奇这个是什么东东,因为"漫月"一词勾起了我的好感-- 在学长 ...

  9. php随机图片github,GitHub - JockieLee/Random-Image: 随机图片服务

    前言 写文章想要配图,但是懒得挑图? 网页背景千遍一律? 最早的时候,经常听说"漫月API",就很好奇这个是什么东东,因为"漫月"一词勾起了我的好感-- 在学长 ...

  10. php随机图片github,GitHub - galnetwen/Random-Image: 随机图片服务

    前言 写文章想要配图,但是懒得挑图? 网页背景千遍一律? 最早的时候,经常听说"漫月API",就很好奇这个是什么东东,因为"漫月"一词勾起了我的好感-- 在学长 ...

最新文章

  1. 理解C#值类型与引用类型(摘录)
  2. 括号匹配编码c语言,用c语言实现括号匹配算法
  3. 02_MyBatis项目结构,所需jar包,ehcache.xml配置,log4j.properties,sqlMapConfig.xml配置,SqlMapGenerator.xml配置
  4. 您的API是什么情况?
  5. VC下的人人对弈五子棋(dos)
  6. Ubuntu 12.04 root默认密码? 如何使用root登录?
  7. [转载]运维自动化201009
  8. 使用ARM芯片的小型NAS设备的一次存储故障的检修
  9. Android遥控车软件设计,手机APP控制,Wifi遥控小车设计资料分享
  10. 【新概念二】 28-No parking
  11. 漏斗模型_绘制漏斗图
  12. web学习笔记-html-html新增
  13. 【论文阅读笔记】BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translati
  14. 【码上实战】【立体匹配系列】经典AD-Census: (1)框架
  15. 磁盘存储链式的B树与B+树(上课笔记)
  16. 1891-2100年php日历代码
  17. Btspread Search Assistant的开发过程
  18. echarts 饼图 中间 画圈 + 文字
  19. 日语形容词变化规律总结
  20. 基于SpringBoot校园外卖配送系统的设计与实现【Java毕业设计·安装调试·代码讲解·文档报告】

热门文章

  1. 网闸、防火墙、保垒机
  2. 阿里心电图数据特征分析
  3. 人头识别与计数_目标检测之人头检测(HaarLike Adaboost)---高密度环境下行人检测和统计...
  4. 狼性团队也需柔性管理
  5. 社招三面阿里“落榜”,幸获内推名额,4面揽下美团offer
  6. 基于单片机智能波形发生器设计
  7. 计算机视觉-图像的SIFT特征(尺度空间)
  8. 高通平台开发系列讲解(网络篇)SFE软加速简介
  9. python 进程详解
  10. 6. 利用word的替换功能可以完成很多工作——word高级替换技巧