git-pro九章
2016-02-01 14:46:28 71 举报
AI智能生成
git技能树
作者其他创作
大纲/内容
3. 分支
3.1 何谓分支
git branch branchName
git checkout branchName
3.2 分支的新建与合并
分支的新建与切换
git checkout -b branchName
git branch -d/-D branchName
分支的合并
解决完冲突后可以运用git add来表示编辑完冲突
git mergetool
3.3 分支的管理
git branch --merged/--no-merged已经或者尚未和当前分支合并的分支
3.4 利用分支进行开发的workflow
长期分支
特性(短期)分支
3.5 远程分支
用 (远程仓库名)/(分支名) 这样的形式表示远程分支
git push --set-upstream origin jy第一次把本地分支推送到远程去
git fetch origin同步远程服务器上的数据到本地
git push origin branchName[/remoteBranchName]push本地分支到远程分支去
在 fetch 操作下载好新的远程分支之后,你仍然无法在本地编辑该远程仓库中的分支。换句话说,在本例中,你不会有一个新的 serverfix 分支,有的只是一个你无法移动的 origin/serverfix 指针。
git merge origin/branchName把该远程分支的内容合并到当前分支
git checkout -b localBranchName origin/remoteBranchName把该远程分支的内容合并到当前分支
git checkout --track origin/serverfix跟踪远程分支
git checkout -b b newBranch origin/remoteBranch为本地分支设定不同于远程分支的名字
3.6 分支的衍合
把一个分支的修改整到另一个分支的两种方法
merge
rebase(衍合)
基本的衍合操作
3.7 小结
删除远程分支
git push origin :remoteLocal
7.Git工具
7.1 选择修订版本
git show branchName在当前分支显示某个分支最后一次提交
git rev-parse branchName
7.2 交互式暂存
7.3 Git工具- 储藏与
7.4 签署工作
7.5 签署
7.6 重写历史
git-pro九 章
1.起步
git的三种状态
已提交
已修改
暂存区
2.git 基础
2.1 取得项目的Git仓库
git init
git clone cloneAddress
2.2 记录每次更新到仓库
文件只有两种状态
已跟踪
未更新
已暂存
未跟踪
git status
跟踪新文件
git \u00A0add ./fileDir/fileName
忽略某些文件
cat .gitignore 查看
.gitignore文件也支持glob匹配模式
git diff查看更改
git diff --staged查看已经暂存(还未commit)的文件里的更改
移除文件git rm [-f]
git rm * -r删除所有文件(包括目录)
git mv beforeName afterName
2.3 查看提交历史
git log
git log [-p]查看详细差异
git log [-n]
git log --author=wuxiaolan
git log -p -2 ...(组合)
git log --stat只显示增改的行数统计
git log --pretty=oneline/short/full/fuller
git log --grep keyword
gitk 查看git历史git log的可视化版本
2.4 撤销操作
取消已经暂存的文件
git reset HEAD [file]
git reset .撤销上次add
git checkout -- fileName取消对文件的修改
修改最后一次的提交
git commit --amend修改最后一次提交
2.5 远程仓库的使用
git fetch会抓取从你上次克隆以来别人上传到此远程仓库中的所有更新
git push origin localBranchName:remoeBranchName把本地的新建的分支推送到远程去
git remote show origin服务器有哪些分支本地是没有更新的等等
2.6 打标签
为什么要打标签?发布某个软件版本的时候
git tag:列出现有的标签
标签的两种类型
轻量级的
git tag tagName
含附注的
git tag -a tagName -m tagDesc
git tag -a tagName sha-1值给以前的提交补充tag
git push origin tagName把本地的这个tag提交到远程去
git push origin --tags把本地所有标签push到远程去
2.7 技巧和窍门
Git别名
git config --global alias.co checkoutgit config --global alias.br branchgit config --global alias.ci commitgit config --global alias.st status
8 自定义Git
8.1 配置git
外部的合并与比较工具
格式化与多余的空白字符
8.3 git钩子
提交工作流钩子
pre-commit在键入提交信息前运行
电子邮件工作流钩子
其他客户端钩子
子主题
服务器端钩子
post-receive可以用来更新其他系统服务或者通知用户
0 条评论
回复 删除
下一页