write down,forget
adidas eqt support ultra primeknit vintage white coming soon adidas eqt support ultra boost primeknit adidas eqt support ultra pk vintage white available now adidas eqt support ultra primeknit vintage white sz adidas eqt support ultra boost primeknit adidas eqt adv support primeknit adidas eqt support ultra boost turbo red white adidas eqt support ultra boost turbo red white adidas eqt support ultra boost turbo red adidas eqt support ultra whiteturbo adidas eqt support ultra boost off white more images adidas eqt support ultra boost white tactile green adidas eqt support ultra boost beige adidas eqt support ultra boost beige adidas eqt support refined camo drop adidas eqt support refined camo drop adidas eqt support refined running whitecamo adidas eqt support 93 primeknit og colorway ba7506 adidas eqt running support 93 adidas eqt support 93

git快速入门

<Category: 小道消息, 资源分享> 查看评论

github

首先到http://.com/申请一个300M的免费空间(足够了),然后按照下面的流程操作,注意SSHkey生成的那步

From http://hi.baidu.com/kissdev/blog/item/944aa2fab2817215a8d311f1.html

1.

相比CVS/SVN,Git 的优势:
- 支持离线开发,离线Repository
- 强大的分支功能,适合多个独立开发者协作
- 速度块

2. GitHub

GitHub是一个托管Git (开源或闭源)项目的网站,闭源收费

使用GitHub步骤:
1、申请GitHub帐户 xxx ,创建名为new-project的新Repository 

2、安装Git客户端(Linux)
#yum install git git-gui

3、 生成密钥对,这样项目可以push到 GitHub上
#ssh-keygen -t rsa -C “xxx@gmail.com”
4、将.ssh/id_rsa.pub拷贝到GitHub网站


5、为了方便,设置ssh不输入口令
# eval ssh-agent
# ssh-add
(输入passphrase)

6、测试是否能联通GitHub
#ssh git@github.com
如果配置正确,显示
ERROR: Hi xxx! You’ve successfully authenticated, but GitHub does not provide shell access
Connection to github.com closed.

7、设置Git全局用户配置
# git config –global user.name “xxx”
# git config –global user.email xxx@gmail.com

8、创建本地新项目工作树
# mkdir new-project
# cd new-project
# git init
# touch README
# 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

9. 更新文件
# vi README
自动commit更改文件
# git commit -a     
更新至远程
# git push origin master

10. 创建和合并分支
#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):

进阶使用,多人开发,分支管理

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菜单)



其他开发者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

$git fetch http://github.com/elasticsearch/elasticsearch.git

本文来自: git快速入门