博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Git 和 Github 使用指南
阅读量:4350 次
发布时间:2019-06-07

本文共 2412 字,大约阅读时间需要 8 分钟。

如果你是使用git作为版本控制工具,那么github基本上是必备的网站,github可以托管你的git版本库,作用 类似于SourceForge和Google Code,github的界面是非常人性化的,由于git本身会比svn来的复杂,所以在操作上github会比SourceForge来的难点。

GitHub.Com是什么?

GitHub可以托管各种Git库,并提供一个web界面,但与其它像 SourceForge或Google Code这样的服务不同,GitHub的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡献代码非常简单:首先点击项目站点的“fork”的按钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的“pull request”机制向项目负责人申请代码合并。已经有人将GitHub称为代码玩家的MySpace。GitHub主要用Rails实现。

Git是什么?

The stupid content tracker,傻瓜内容跟踪器。Linux 是这样给我们介绍Git的。Git是用于Linux内核开发的版本控制工具。与常用的版本控制工具CVS, Subversion等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git 最为出色的是它的合并跟踪(merge tracing)能力。作为开源自由原教旨主义项目,Git没有对版本库的浏览和修改做任何的权限限制。它只适用于 Linux / Unix 平台,没有Windows版本,目前也没有这样的开发计划。

GitHub支持SVN?

GitHub支持SVN版本控制,只不过是只读的,不能提交。

如何用SVN检出GitHub上的项目?

kissy项目:svn checkout 
tinymce项目:svn checkout 

1.在github上创建一个新的版本库

github首页,点击“create a new repo”按钮:

这样一个新的版本库就创建完毕了。
接下来我们需要本地版本库和远程版本库(github上的)进行通信,还需要一些配置。

2.ssh配置

想要让本地版本库与远程版本库通信,需要配置下SSH key。

2.1检查计算机上是否已经有SSH key
  1. $ cd ~/.ssh

如果出现““No such file or directory”或类似的语句,说明缺少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"

会出现类似下图的提示:

直接按下“enter”键即可,然后输入密码。
一切顺利的话,你可以gedit .ssh/id_rsa.pub文件,复制里面的key码。

2.3增加ssh key到github上

第二个按钮

点击SSH keys

留意并不需要填写title,github会自动生成,直接把复制的key黏贴到key输入框确定即可。

2.4配置下git的用户名和email
  1. $ git config --global user.name "XXX"
  2. $ git config --global user.email "XXX"

配置结束。

3 新建一个项目并进行配置

3.1创建本地新项目工作树

  $ mkdir new-project
  $ cd new-project
  $ git init
  $ git add README
  $ git commit -m 'first commit'
定义远程服务器别名origin
  $ git remote add origin git@github.com:xxx/new-project.git   
本地和远程合并,本地默认分支为master
  $ git push origin master  
GitHub网站上就可以看见了, http://github.com/xxx/new-project
3.2 更新文件
  $ vi README
自动commit更改文件
  $ git commit -a     
更新至远程
  $ git push origin master
3.3创建和合并分支

  $ git branch 显示当前分支是master

  $ git branch new-feature  创建分支
  $ git checkout new-feature 切换到新分支
  $ vi page_cache.inc.php
  $ git add page_cache.inc.php
Commit 到本地GIT
  $ git commit -a -m "added initial version of page cache"
合并到远程服务器
  $ git push origin new-feature
如果new-feature分支成熟了,觉得有必要合并进master
  $ git checkout master
  $ git merge new-feature
  $ git branch
  $ git push 
则master中也合并了new-feature 的代码
再登录到GitHub可以看见"Switch Branches"下的分支选项:
GitHub还有一个很实用的功能,查看开发进程网络图(Network):

 

转载于:https://www.cnblogs.com/hedgehog-ZDH/archive/2013/03/02/2939977.html

你可能感兴趣的文章
Arraylist集合遍历输出
查看>>
java中的选择结构与循环结构
查看>>
无法将类型“ASP.login_aspx”转换为“System.Web.UI.WebControls.Login”
查看>>
[cocos2dx] lua注册回调到c++
查看>>
(treap)[bzoj3224][洛谷3369][cogs1829]Tyvj 1728 普通平衡树
查看>>
Linux下常用的shell命令记录
查看>>
HTTP 常用 Header 讲解
查看>>
linux分割字符串操作
查看>>
PHP学习2
查看>>
多实例Mysql配置
查看>>
KOA中间件源码解析
查看>>
Mapnik使用postgres中的栅格数据
查看>>
Java学习之异常处理
查看>>
combox的DispalyMember和ValueMember属性的测试
查看>>
Start Developing Mac Apps -- Human Interface Design 用户界面设计
查看>>
linux下安装Mongodb
查看>>
Page.RegisterStartupScript和Response.Write的区别。
查看>>
hdu4348区间更新的主席树+标记永久化
查看>>
bzoj3261: 最大异或和 可持久化trie
查看>>
ZOJ 2532 Internship
查看>>