iOS开发 git github 初学+进阶

1 注册github,配置git环境
2 github上创建立一个项目
我们创建的是一个github仓库,一个仓库里只能存放(或叫对应)一个项目
打开teminal

Global setup:
 Set up git
  git config --global user.name "Your Name"
  git config --global user.email defnngj@gmail.com
      
Next steps:打开已有Xcode工程
  git init
  git commit -m 'first commit'#提交到库
  git remote add origin git@github.com:defnngj/hibernaet-demo2.git#链接到远程git
  git push -u origin master

3 使用ssh
$ cd ~/. ssh 检查本机的ssh密钥,如果木有,百度

如果不是第一次使用,请执行下面的操作,清理原有ssh密钥

 $ mkdir key_backup
$ cp id_rsa* key_backup
$ rm id_rsa*
生成新的密钥:
Ssh-keygen –t rsa –C “defnngj@gmai.com” 
 
  
 
最好不要直接打开~/.ssh/里面的id_rsa.pub文件,使用vi id_rsa.pub.防止有额外符号
 
  
 

登陆github系统。点击右上角的 Account Settings--->SSH Public keys ---> add another public keys

把你本地生成的密钥复制到里面(key文本框中), 点击 add key ok

git中运行下面命令:

 

$ git –T git@github.com

如果提示:Hi defnngj You've successfully authenticated, but GitHub does not provide shell access. 说明你连接成功了


4 开始使用

$ git status   //查看当前项目下所有文的状态,如果第一次,你会发现都红颜色的,因为它还没有交给git/github管理。

$ git add .   //.)点表示当前目录下的所有内容,交给git管理,也就是提交到了git的本地仓库。

Ps:git的强大之处就是有一个本地仓库的概念,在没有网络的情况下可以先将更新的内容提交到本地仓库。

$ git commit –m”new natter ”  //对你更新或修改了哪些内容做一个描述。

$ git remote add origin git@github.com:defnngj/hibernate-demo.git

//如果你是第一次提交项目,这一句非常重要,这是你本地的当前的项目与远程的哪个仓库建立连接。

Psorigin可以改为别人的名字,但是在你下一次push(提交)时,也要用你修改之后的名字。

$ git remote -v  //查看你当前项目远程连接的是哪个仓库地址。

$ git push -u origin master  //将本地的项目提交到远程仓库中。


如果你是第一次想把github上面的项目克隆到本地或者要克隆别人的项目到地。

$ git clone git@github.com:defnngj/hibernate-demo.git  //在git下面切换到想存放此项目的文件目录下,运行这条命令就可以将项目克隆下来。

 

假如本地已经存在了这个项目,而仓库中又有一新的更新,如何把更的合并到本地的项目中?

$ git fetch origin    //取得远程更新,这里可以看做是准备要取了

$ git merge origin/master  //把更新的内容合并到本地分支/master


$ git rm   aaa.java    //移除我们删除的那个文件,不然git不允许我们往远程仓库提交。

$ git rm   bbb/ -r   // -r 会把bbb/目录下的所有内容一次性移动。


5 继续

1. .gitIgnore 文件忽略哪些不被Git跟踪的文件
在根目录下生成 .gitignore 文件,
例子1:
# Can ignore specific files
.DS_Store
# Use wildcards as well
*~
*.swp
# Can also ignore all directories and files in a directory.
tmp/**/*

例子2:
# Ignore all dotfiles...
.*
# except for .gitignore
!.gitignore

2. 使用GitHub进行多人协同开发
GitHub上大的项目如Ruby有多个Branch

(0) 克隆GitHub项目

git clone git://github.com/xxx/xxx.git

(1) 分支的创建和合并
# git branch local 
# git checkout local    切换到local

# ...  开发local分支

与master分支合并
# git checkout master
# git merge local
# git branch -d local    合并完后删除local

(2) 最佳方式的GitHub多人协作,每个人建立自己分支

假定有项目创建者A (主力开发者和代码合并)和其他开发者B, C , D, E ...
创建者A将其他开发者加到项目的Collaborator里 ,如下图所示(项目Admin菜单)

iOS开发 git github 初学+进阶 - vivian - vivian的博客

其他开发者B, C , D, E...,配置好Git和GitHub的证书:

# git clone git@github.com: xxx/xxx.git   ( private 链接)
# git pull    从服务器更新
# git log   查看其他成员更新日志

其他开发者建议在开发时建立自己的分支,不要在master上整了
B开发者(当然主力开发者也适用)
# git branch dev-b
# git checkout dev-b
....  开发

将分支push到github
# git push origin dev-b   (如果不通过github,通过自己机器上的路径也可以)

主开发者A
# git pull origin dev-b  即可合并其他开发者的Branch

为了保险起见,主开发者可以在新的Branch中测试B的开发成果,测试稳定后再合并进Master
# git branch newexp
# git checkout newexp
# git pull origin dev-b
... (testing...)
....
# git checkout master
# git merge newexp


3. 建立自己的Git服务器进行多人协同开发

服务器server1: 
# mkdir myproject.git
# cd myproject.git
# git --bare init --shared

开发者A 初始化服务器上项目
# cd myproject
# git push user@server1:myproject.git  master

开发者N可获得初始项目文件
# git clone user@server1:myproject.git
改动
# git commit 
# git pull
# git push

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值