安装
$ sudo apt-get install git-core
首先需要指定用户名和电子邮件地址
$ git config --global user.name "Yehun" $ git config --global user.emal "geniushk@live.com"
再验证一下配置信息
$ git config --list user.name=Yehun user.email=geniushk@live.com
配置存放路径在当前用户家目录的.gitconfig文件中
创建SSH秘钥
# 一直默认就可以 $ ssh-keygen
一般生成的路径在当前用户家目录的.ssh目录下,将公钥.ssh/id_rsa.pub文件内容添加进git. Srttings -> SSH Keys
验证是否成功
ssh -T git@github.com Hi someone! You've successfully authenticated, but GitHub does not provide shell access.
同步GitHub到本地
git clone git://github.com:xxxx/test.git # 以gitreadonly方式克隆到本地,只可以读 git clone git@github.com:xxx/test.git # 以SSH方式克隆到本地,可以读写 git clone https://github.com/xxx/test.git # 以https方式克隆到本地,可以读写 git fetch git@github.com:xxx/xxx.git # 获取到本地但不合并 git pull git@github.com:xxx/xxx.git # 获取并合并内容到本地
本地提交项目到GitHub
mkdir testdir & cd testdir touch README.md git init # 初始化一个本地库 git add README.md # 添加文件到本地仓库 git rm README.md # 本地倒库内删除 git commit -m "first commit" # 提交到本地库并备注,此时变更仍在本地。 git commit -a # 自动更新变化的文件,a可以理解为auto git remote add xxx git@github.com:xxx/xxx.git # 增加一个远程服务器的别名。 git remote rm xxx # 删除远程版本库的别名 git push -u remotename master # 将本地文件提交到Github的remoname版本库中。此时才更新了本地变更到github服务上。
分支版本操作
1创建分支
git branch # 显示当前分支是master git branch new-feature # 创建分支 git checkout new-feature # 切换到新分支 vi page_cache.inc.php git add page_cache.inc.php git commit -a -m "added initial version of page cache" git push origin new-feature # 把分支提交到远程服务器,只是把分支结构和内容提交到远程,并没有发生和主干的合并行为。
2如果new-feature分支成熟了,觉得有必要合并进master
git checkout master # 切换到新主干 git merge new-feature # 把分支合并到主干 git branch # 显示当前分支是master git push # 此时主干中也合并了new-feature的代码