常见代码管理工具有git和svn,本文主要介绍git的使用和一些常见操作。不涉及git仓库的新建和初始化。
工具介绍
git 是一种分布式代码管理工具,相比于SVN,最大的特点就是每个用户都有自己的git仓库,用户可以选择将自己的本地修改保存在自己的本地仓库,验证代码功能并完成代码规范再选择提交。在不联网的情况下,可以提交到本地仓库,联网的时候,可以push到远程仓库和其他用户共享;另外本地仓库还有强大的分支管理功能,可以支持多分支多项目同时开发且互不影响。
常用git命令:
git log //查看提交日志
git add //提交到缓存区
git reset //撤销缓存区
git commit //提交代码到本地仓库
git push //提交代码到远程仓库
git pull //拷贝远程仓库的代码
git checkout //回退文件修改或者切换分支
git stash //暂存本地修改
git stash pop //释放第一个暂存区代码
git diff //查看本地具体修改,通常用于生成补丁
git format-patch //将本地提交生成补丁
git revert //回滚一个提交
git cherry-pick //下载远程仓库的某个提交
git show //查看具体修改
git status //查看所有修改文件
git 命令升级用法
本地仓库关联远程仓库并更新
git branch -a 查看当前所有分支和关联
git checkout -b next-dev --track remotes/rk/next-dev 切出分支,并且关联到某个分支
git pull --rebase 更新代码
本地多个提交但只提交其中某个提交
git rebase -i //对所以提交进行自定义修改包括移动、合并、交换顺序、单独修改、修改提交信息等;
:# Commands:
# p, pick = use commit
# r, reword = use commit, but edit the commit message
# e, edit = use commit, but stop for amending
# s, squash = use commit, but meld into previous commit
# f, fixup = like "squash", but discard this commit's log message
# x, exec = run command (the rest of the line) using shell
# d, drop = remove commit
除了以上命令,还可使用命令模式输入
:m 0 //移动到指定位置
git stash高阶用法
当在一个分支的开发工作未完成,却又要切换到另外一个分支进行开发的时候,可以先将自己写好的代码,储存到 git 栈,进行另外一个分支的代码开发。这时候 就需要使用git stash 命令
git stash save '注释' //保存当前修改并添加注释
git stash list //查看当前stash栈的所有内容
git stash apply stash@{$num} //释放stash栈的某一次修改
git stash drop stash@{$num} //删除某一次修改
git stash clear //删除全部stash内容
git stash show stash@{$num} //查看某次修改具体信息
git reset高阶用法
git reset --soft //不删除工作区改动,撤销commit,不撤销add
git reset --mixed //不删除工作区改动,撤销commit,撤销add
git reset --hard //删除工作区改动,撤销commit,撤销add
git branch高阶用法
git branch -a //查看所有分支
git branch -vv //查看所有分支详细信息
git checkout "branchname" //切换到某一分支
git checkout -b “name” //新建并切换到该分支
git branch -D "name" //删除分支
持续更新…