# GitTest **Repository Path**: HualZhang/GitTest ## Basic Information - **Project Name**: GitTest - **Description**: 联系并总结相关git命令 - **Primary Language**: Android - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-11-08 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # GitTest #### 项目介绍 练习并总结相关git命令 > 首先android studio上面有两种方式,一种是图形化的,一种是在terminal中间通过git命令来操作。 ---- 1.git查看当前项目分支数 首先可以尝试创建一个分支,然后查看当前分支数 git checkout new_branch // 这个是创建一个新的分支 git branch // 这个是查看当前项目分支 2.git切换分支 在当前分支有修改过文件的时候,需要先stage(暂存)一下修改的内容或者commit修改的内容后,然后checkout,否则可能会出现问题(没试过强行checkout) git status // 查看当前修改的的文件(包括未跟踪的文件(没有添加到版本库)) git add // 将未跟踪的文件添加到git版本控制中 git add . // 添加所有文件 rm // 移除某个文件(相对全路径) git rm --cached // 把文件移除出暂存区域,变为未跟踪文件,还在文件目录下 git rm // 移除移除的记录 git commit -m "message" // 提交到本地仓库,引号里面是提交的信息 git stash (save "message") // 暂存相关信息(括号里的可以不要,会默认生成一个message,括号里面的内容则是自定义stash暂存的信息) git stash list // 查看暂存的列表 git stash pop (stash@{0}) // 恢复当前进度到之前暂存的地方(android studio操作为unstash),pop操作会在恢复之后,移除stash的记录 git stash apply [–index] [stash_id] // 除了不删除恢复的进度之外,其余和git stash pop 命令一样。 git stash drop [stash_id] // 删除一个存储的进度。如果不指定stash_id,则默认删除最新的存储进度。 git stash clear //删除所有存储的进度。(apply,drop操作为一组,clear最后) git checkout master // 切换分支到master 3.分支合并 > 分支的合并可以有两种方式,一个是merge,一个是rebase a.merge > 将一个分支A合并到另一个分支B,A修改的内容,合并之后B分支就拥有一样的 git merge B // 在A分支上面合并B分支,并且解决相关冲突 b.rebase > 基于A分支开的分支B,当A分支和B分支都分别修改了东西,这个时候A分支还不需要B分支的功能,但是B分支需要A分支修改的功能,需要B分支重新rebase A分支,即可。 git rebase A // 在B分支rebase A分支,rebase过程中,出现冲突,解决完成后使用continue命令 git rebase --continue // 解决冲突后,提交这个命令,如果rebase的提交比较多可能需要多次操作 4.分支log查看 > android studio查看是在version control里面,使用命令行,也可以查看 git log // 简单的查看git提交日志,回车查看更多,想退出直接按Q git log --pretty=format:"%h - %an, %ar , %cn: %s" // pretty为其中一个选项(其他的例如stat,graph等) 使用format可以自定义log的格式,主要通过选项(占位符)来表示,常见的选项有:%h(简短hash值);%an(作者的名字);%ar(修订日期,按多久以前的方式显示);%cn(提交者);%s(提交说明) > 更多细致的命令请查看https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E6%9F%A5%E7%9C%8B%E6%8F%90%E4%BA%A4%E5%8E%86%E5%8F%B2