新安装的git初始化设置:
克隆主分支:git clone git://github.com/xxx/(用户名)/xxx(仓库名).git
git clone git@github.com:xxx/xxx.git 支持push,一般用这个
克隆指定分支:git clone -b v-0.0.2 (v-0.0.2为版本号) git://github.com/xxx/(用户名)/xxx(仓库名).git
用户名:git config --global user.name "Your Name"
邮箱:git config --global user.email "email@example.com"
创建空目录:mkdir 文件名
显示当前路径:pwd /Users/michael/xxx
初始化:git init 将目录变成可管理的仓库
加入暂存区:git add 文件名
加入仓库:git commit -m "提交信息描述"
查看状态:git status
查看日志:git log
简化查看日志信息:git log --pretty=oneline
查看修改内容:git diff
回退上一个版本:git reset --hard HEAD^
回退上100个版本:git reset --hard HEAD~100
查看工作区和版本库的区别:git diff HEAD -- 文件名
撤销修改:1.若修改后没放到暂存区:git checkout -- 文件名
2.如修改后放到暂存区:git reset HEAD 文件名
在执行:git checkout -- 文件名
删除文件:删除工作区:rm 文件名
删除仓库:git rm 文件名
创建SSH Key:ssh-keygen -t rsa -C "email@example.com"
关联远程库:git remote add origin git@github.com:xxx(githun用户名)/xxx(仓库名).git
推送github:git push origin master
创建分支:git branch dev (创建dev分支)
切换分支:git checkout dev(切换分支)
上面的两步可以写为:git checkout -b dev
查看当前分支:git branch
合并分支:git merge dev(用于合并指定分支到当前分支)
删除分支:git branch -d dev
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
git fetch 和git pull 的差别 (转载)
1、git fetch 相当于是从远程获取最新到本地,不会自动merge,如下指令:
git fetch orgin master //将远程仓库的master分支下载到本地当前branch中
git log -p master ..origin/master //比较本地的master分支和origin/master分支的差别
git merge origin/master //进行合并
也可以用以下指令:
git fetch origin master:tmp //从远程仓库master分支获取最新,在本地建立tmp分支
git diff tmp //將當前分支和tmp進行對比
git merge tmp //合并tmp分支到当前分支
2. git pull:相当于是从远程获取最新版本并merge到本地
git pull origin master
git pull 相当于从远程获取最新版本并merge到本地
在实际使用中,git fetch更安全一些
打tag:
git tag -a v-0.0.3 -m "add restful"
git push origin --tags