git 版本控制1

http://blog.csdn.net/yyh352091626/article/details/50714880


提起GitHub大家并不陌生,GitHub也算为“开源”做出突出的贡献了~ Git这种良好支持分支管理的分布式的SCM真正解决了一个问题问题:每个工程师在自己本地分支上开发,完成功能以后往master分支合并。

关于Windows下GitHub的一些使用,随处可见。本文着重介绍如何在Mac OSX下上传本地的项目源代码至GitHub。

首先当然是安装Git工具。

1、下载Git installer,地址:http://git-scm.com/downloads

2、pkg包下载完成,双击安装。

3、打开终端,使用git --version命令查看安装版本,能查看到就是安装成功了(eg:git version 2.5.4 (Apple Git-61))。

接下来就是创建SSH。打开终端,输入以下命令来查看.ssh是否存在:

[plain]view plaincopy

$ cd ~/.ssh

若提示“-bash: cd: ~/.ssh: No such file or directory” 那就说明.ssh文件夹不存在,那么则进行下一个步骤,否则就是将原来的.ssh文件夹备份以下,亦或是切换到其他路径下建立ssh。输入以下命令来创建ssh:

[plain]view plaincopy

$ ssh-keygen -t rsa -C xxx@xx.com

xxx@xx.com为你注册GitHub时的邮箱账号,命令执行成功后,会有以下提示

[plain]view plaincopy

Generating public/private rsa key pair.

Enter file in which to save the key (/Users/yuyuhang/.ssh/id_rsa):       // .ssh默认路径,不输入则不修改

Enter passphrase (empty for no passphrase):                              // 密码长度至少为4,否则失败

Enter same passphrase again:

Your identification has been saved in /Users/yuyuhang/.ssh/id_rsa.

Your public key has been saved in /Users/yuyuhang/.ssh/id_rsa.pub.

The key fingerprint is:

8d:d3:5f:31:ae:13:48:f0:78:df:a1:8f:a5:a4:c0:06 352091626@qq.com

The key's randomart image is:

+--[ RSA 2048]----+

|        .        |

|         +       |

|      E . +   +  |

|       o * o + + |

|        S + = =  |

|       . o + O   |

|          . * .  |

|             .   |

|                 |

+-----------------+

接下来就是在GitHub上创建SSH。首先登陆你的GitHub,右上角用户头像下选择Settings,在SSH Keys 选项里面添加ssh,如下所示。

Title:xxx@xx.com

Key:打开你生成的id_rsa.pub文件(/User/yourname/.ssh/is_rsa.pub),将其中内容拷贝过来。

值得一提的是,在Mac OSX下,隐藏文件默认是不显示的,可以通过以下命令来 显示/隐藏 隐藏文件夹,当然,熟悉Linux命令行操作的人,可以直接用vim命令打开,或者cat直接显示。

[plain]view plaincopy

显示Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles YES

隐藏Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles NO

然后在GitHub上创建版本库(Repository),在GitHub首页上,点击“Create a New Repository”,如下所示(为了便于后面演示,创建README.md这步暂不勾选):

创建完成后跳转到代码仓库界面,如下:

当然了,在没有上传代码之前,列表是空的。

紧接着按照以下步骤进行本地仓库的创建及代码上传。打开终端,输入以下命令:

[plain]view plaincopy

$ touch README.md                                         //新建一个README文档,若上一步勾选了创建README.md,提交时导致冲突

$ git init                                                //初始化本地仓库

$ git add README.md                                       //添加刚刚创建的README文档

$ git commit -m "你的注释...."                             //提交到本地仓库,并写一些注释

$ git remote add origin git@github.com:yourname/xxxx.git  //连接远程仓库并建了一个名叫:origin的别名,当然可以为其他名字,但是origin一看就知道是别名,youname记得替换成你的用户名

$ git push -u origin master                              //将本地仓库的文件提交到别名为origin的地址的master分支下,-u为第一次提交,需要创建master分支,下次就不需要了

初始化完成之后,我们可以把我们项目的源代码提交上去,使用git add命令,如下:

[plain]view plaincopy

$ git add 系统签名/                                      // 添加需要提交的文件夹,使用git add .  则添加全部

$ git add assets/

$ git add project.properties

$ git add res/

$ git add src/

$ git commit -m "上传项目源代码"                         // 提交到本地仓库

$ git push origin master                               // 将本地仓库合并到别名为origin地址的master分支下

显示结果如下,则代码上传成功。

[plain]view plaincopy

Counting objects: 63, done.

Delta compression using up to 8 threads.

Compressing objects: 100% (53/53), done.

Writing objects: 100% (63/63), 1.41 MiB | 217.00 KiB/s, done.

Total 63 (delta 16), reused 0 (delta 0)

To git@github.com:smuyyh/autoinstall.git

000a667..61357d8  master -> master

刷新一下GitHub,则显示刚刚提交的项目源代码。

相关总结

1、要关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git;关联后,使用命令git push -u origin master第一次推送master分支的所有内容;此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改;

2、切记上传文件时,一定要先commit到本地仓库,才能进行push提交,否则会显示Everything up-to-date(意思就是目前的远程仓库的内容跟本地仓库对比后,没有做修改,是最新的);

3、初用Mac的童鞋可能还不知道终端在哪里,点击Finder旁边的Launchpad,在“其他”文件夹下。

4、在设置别名的时候,出现“fatal: remote origin already exists.”错误,说明该别名已经存在,可以另外建一个别名,或者使用“git remote rm origin”命令删除原来的别名,然后重新执行“git remote add origin git@github.com:yourname/xxxx.git”;

5、在提交的时候,出现“error: failed to push some refs to 'git@github.com:xxx/xxx.git' hint: Updates were rejected because the remote contains work that you do not have locally....”的错误,说明有冲突,远程仓库的版本比本地仓库的要信,所以要先进行更新,才能提交。使用“git pull git@github.com:xxx/xxx.git”命令进行更新,地址自己相应替换掉。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,794评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,050评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,587评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,861评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,901评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,898评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,832评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,617评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,077评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,349评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,483评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,199评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,824评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,442评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,632评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,474评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,393评论 2 352

推荐阅读更多精彩内容