安装
sudo apt-get install git
配置用户名密码
git config --global user.name "xxx"
git config --global user.email "xxx@gmail.com"
此时,Home目录下会新建一个.gitconfig文件
生成Keys
ssh-keygen -t rsa -C "qiubing.it@gmail.com"
建一个仓库
$mkdir testGit #建立仓库目录
$cd testGit #进入仓库目录
$git init #这会在当前的目录下建一个仓库
Initialized empty Git repository in e:/doc/Git/test/testGit/.git/
操作
$ git status #查看当前仓库的状态
$ git log #查看当前仓库的历史日志
$ echo “hello Git” > readme.txt #建立一个含有 hello Git 的文本文件
$ git add readme.txt #将readme.txt添加到暂存区中
$ git status #查看当前仓库的状态
$ git commit -m "project init" #将刚才的修改提交到本地仓库中
$ git diff #查看仓库里未暂存内容和仓库已提交内容的差异
系统会提示key的保存位置(一般是~/.ssh目录)和指定口令,保持默认,连续三次回车即可
复制SSH Key到GITHUB
打开该文件,id_rsa.pub文件内的内容,粘帖到github帐号管理的添加SSH key界面中
cat ~/.ssh/id_rsa.pub
登录github-> Settings-> SSH and GPG Keys-> New SSH key添加
测试是否连接成功
ssh -T git@github.com
提示
…
Are you sure you want to continue connecting (yes/no)?
直接输入 yes 就可以了
利用Git从本地上传到GitHub
git remote add testGit git@github.com:yourName/yourRepo.git
提交到远程的GitHub仓库
git push testGit master
从GitHub克隆项目到本地
回到要存放的目录下,使用命令 “git clone https://github.com/xxx/xxx.git”
如果本地的版本不是最新的,可以使用命令 “git fetch <本地仓库>” //获取远程更新
把更新的内容合并到本地分支,可以使用命令 “git merge <本地仓库>/master”
如果你不想手动去合并,那么你可以使用: git pull <本地仓库> master // 这个命令可以拉去最新版本并自动合并
想覆盖掉远程库的版本,强制推送git push -f <本地仓库> master
其他
创建和合并分支
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 的代码