为了账号安全,请及时绑定邮箱和手机立即绑定

用GIT做版本控制-并上传至github

标签:
Ruby


安装Git

源码安装:

Git的工作需要调用curl,zlib,openssl,expat,libiconv等库的代码,首先安装依赖环境:

# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel

之后在git官网下载最新的版本源代码:

http://git-scm.com/download

然后编译并安装:

# tar -zxvf git-1.8.4.2.tar.gz

# cd git-1.8.4.2

# make prefix=/usr/local all

# make prefix=/usr/local install

初次运行git前的配置

用户信息:

第一个要配置你个人的用户名和电子邮件地址,每次提交时都会引用这两条信息

# git config --global user.name "Leon Hao"

# git config --global user.email haolulue@163.com

文本编辑器:

设置默认使用的文本编辑器。Git需要你输入一些额外信息的时候,会自动调用一个外部文本编辑器给你用。默认操作系统指定默认编辑器,一般可能会是vi或者vim,如果你有其他的偏好,比如Emacs的话,可以重新设置:

# git config --global core.editor emacs

差异分析工具:

还有一个比较常用的是,在解决合并冲突时使用哪种差异分析工具。比如要改用vimdiff的话:

# git config --global merge.tool vimdiff

查看配置信息:

要查看已有的配置信息,可以使用git config --list命令:

[root@SK-UAT-MYSQL /]# git config --list

user.name=Leon Hao

user.email=haolulue@163.com

设置第一个仓库:

进入Rails的程序根目录下,也可以自己手动创建一个目录,然后进入创建的目录中

初始化一个空的仓库

# git init

Git默认会跟踪所有的文件,但是有一些文件是我们不需要跟踪的,例如Rails(ruby)会创建一些日志文件记录应用程序的动作,这些文件经常变化,我们不需要版本控制系统跟踪这些文件,git有忽略文件的机制:在应用程序的根目录创建一个名为.gitignore的文件,然后写入一些规则告诉git忽略哪些文件即可:

Rails命令默认创建的.gitignore文件

# See http://help.github.com/ignore-files/ for more about ignoring files.

#

# If you find yourself ignoring temporary files generated by your text editor

# or operating system, you probably want to add a global ignore instead:

#   git config --global core.excludesfile '~/.gitignore_global'

# Ignore bundler config.

/.bundle

# Ignore the default SQLite database.

/db/*.sqlite3

/db/*.sqlite3-journal

# Ignore all logfiles and tempfiles.

/log/*.log

/tmp

我们再加入一些规则,修改这个文件即可:(为了筛选出配合ruby使用,自己可以根据自己需要修改)

# See http://help.github.com/ignore-files/ for more about ignoring files.

#

# If you find yourself ignoring temporary files generated by your text editor

# or operating system, you probably want to add a global ignore instead:

#   git config --global core.excludesfile '~/.gitignore_global'

# Ignore bundler config.

/.bundle

# Ignore the default SQLite database.

/db/*.sqlite3

/db/*.sqlite3-journal

# Ignore all logfiles and tempfiles.

/log/*.log

/tmp

# Ignore other unneeded files.

doc/

*.swp

*~

.project

.DS_Store

.idea

添加文件并提交:

把rails项目中的文件添加到git中,然后提交结果,git会按照.gitignore中的规则忽略文件

# git add .

查看状态:

通过这个命令你可以看到你提交那些文件,那些文件发生了改变

# git status

结果如下:

# 位于分支 master

# 要提交的变更:

# (使用 "git reset HEAD <file>..." 撤出暂存区)

#

# 修改: README.md

#

添加注释:

添加commit,记录git你改变了哪些改动:

# git commit -m "add README.MD"

结果:

[master 9e22467] add README.MD

1 file changed, 1 insertion(+), 1 deletion(-)

查看提交历史信息:

# git log

结果:

commit 9e22467c28fffff0c81e088d7787672489a87a3d

Author: Leon Hao <haolulue@163.com>

Date: Wed Oct 30 17:38:24 2013 +0800

add README.MD

commit 7179995695f7f8852dd3d4e2b6b3ef63878d6cfb

Author: Leon Hao <haolulue@163.com>

Date: Wed Oct 30 15:30:45 2013 +0800

add README file

commit 29001e46fdcee1838215416f558d4a5110a6834e

Author: Leon Hao <haolulue@163.com>

Date: Wed Oct 30 15:25:26 2013 +0800

doccenter commit

撤销这次改动:

可以看到一个文件被删除了,但是这个改动只发生在工作区,还没有提交。这样我们就可以用checkout命令切换到前一个提交记录来撤销这次改动(其中-f意思是复制当前的改动)

# git checkout -f

分支,编辑,提交,合并

分支:

Git中的分支功能很强大,分支是对仓库的复制,在分支中所做的改动不会影响父级文件,大多数情况下,父级仓库是master分支,可以使用checkout命令,并指定-b创建一个新分支。

# git checkout -b testfz

查看分支:

# git branch

编辑:

# git mv README.rdoc README.md

提交:

查看状态

# git status

添加:

# git add .

注释:

# git commit -a -m "add"

-a:将现有的文件的所有改动(包括使用git mv创建的文件,对git来说并不是一个新的文件)添加进来

合并:

# git checkout master

结果:

切换到分支 'master'

# git merge testfz

结果:

更新 9e22467..3d64e79

Fast-forward

README.md | 1 -

1 file changed, 1 deletion(-)

清理分支:

# git branch -d testfz

GitHub

已经将项目代码纳入git版本控制系统,现在将其推送到github了,github是一个针对git仓库及分享社交平台,将代码拷贝存放一份到github有两个目的:其一是对代码的完整备份(包括完整的提交历史),其二方便以后的协作,这一步不是必须要做的,不过加入github可以给你提供机会参与到更广为认知的开源项目来

1、首先需要到github注册帐号

注册地址:https://github.com/

2、创建ssh keys

用于通过key的方式将git项目推送至github中

官方说明:

https://help.github.com/articles/generating-ssh-keys#platform-linux

# cd ~/.ssh/

# ssh-keygen -t rsa -C "haolulue@163.com"

将ssh key添加再自己的github中,连接为

https://github.com/settings/ssh

3、创建仓库的连接,设置如下:

https://github.com/new

140905785.png

4、上传至github中

# git remote add origin git@github.com:haoxiaolu/doccenter

# git fetch

# git commit -a -m "add file"

# git add .

# git push

5、已经完成,可以直接再github中查看自己的项目

140941378.png

©著作权归作者所有:来自51CTO博客作者郝路路的原创作品,如需转载,请注明出处,否则将追究法律责任

rubyrorrailsSystem


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消