赞
踩
包含Git完整基本操作,并提供进阶学习的资料。
部分选取自《Android神兵利器》
查看当前仓库状态。会提示那些文件发生修改,哪些内容需要add&commit。
git shortlog
将开发者操作按照姓名分组
git commit –amend -m “这里是追加的注释,会覆盖上次的注释”
如果上一个注释写错,可以这样进行修改和追加。
git diff ReadMe.txt(文件名)
显示指定内容的前后变化
git diff HEAD
显示出上次提交节点的差别
git还支持第三方更强大的diff工具:Meld、beyond compare
图形化的 log记录
Git三个区域:工作区(开发修改代码区域)、暂存区、历史区(保存各个版本区域)
暂存区:Git根目录下 > .git > index的文件中,保存了所有的代码提交记录。
add操作就是将记录保存到暂存区,此时Head依然指向之前的内容,通过commit将暂存区的内容全部提交,之后Head指向最新内容(通过gitk查看)
将未add提交的修改内容全部还原
如果执行add后修改的内容,执行该指令会修改到执行好add后
git checkout – ReadMe.txt(文件名)
能将add提交的内容都回退掉
git reset HEAD ReadMe.txt(文件名)
文件从暂存区回退到工作区
回退一个版本
git reset –hard HEAD~5
回退5个版本()
hard参数:不仅仅是将本地版本库的头指针全部重置到指定版本,也会重置暂存区,并且会将工作区代码也回退到这个版本。
可以查看所有操作的历史!
删除文件
暂存
ssh-keygen -t rsa -C “yourname@example.com”
创建SSH私钥和公钥
id_rsa私钥用于验证自己身份。id_rsa.pub公钥用于向服务器表明自己的身份。
git remote add
将本地代码库提交到远程仓库
git push -u origin master
将本地master分支提交到远程的master分支,并关联起来。
git pull –rebase
如果Apush修改前,B push了修改,A push的时候需要先从远程获取最新修改。这个指令不会产生过多的merge历史。
git clone git地址
就能从远程仓库clone下来,新建一个本地仓库。
git checkout -b first
创建新分支,并且切换到该分支,等价于:
git brach first
创建分支
git checkout first
切换分支
如果此时有未提交的修改,是无法切换分支的,这时候就可以用git stash进行暂存
git branch
查看分支
-r
显示所有远程分支,-a
显示所有本地分支和远程分支
(master)git merge first
在first分支进行修改、add、commit后,切换到master分支,合并第一个分支到master分支。
merge和rebase,rebase操作后时间线会合并,merge不会。其余都是一样的。
git branch -d first
删除分支first。-d是删除分支,-D是强行删除分支。
git remote origin
查看远程分支
git remote -v origin
查看详细信息
git checkout -b dev
将dev分支推送到远程仓库。
创建Tag,会记录在最后的提交上
git tag
查看所有Tag
git tag -a v1 -m “vesion1” b87123665216321635173
-a制定tag名字,-m制定注释文字
git show tag名字
显示tag的详细信息
git tag -d version0
删除tag
git push origin version0
推送tag到远程仓库
git push origin –tags
推送所有本地tag到远程仓库
删除远程Tag
删除本地tag,再重新push到远程代码库。…….
Git权威指南中文版
Git Community Book
WIKI Git主页
Git dojo
Learn Git in 15min
LearnGitBranching
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。