Open xvno opened 5 years ago
以"完成"以下任意一项
[<jira-id>: ]<动作类型>: [<模块/文件/功能等逗号分隔>:]+ <简要说明>
动作类型: Add, Rmv, Mdf, Dbg, Opt 模块/文件/功能 简要说明
# 实例
# ": "是英文标点加空格
# 尽量使用原有的词汇, 不要直接翻译成中文
Add: login: logo文件
Mdf: login: footer 配色 和 文案
Rmv: user: 无用的大尺寸图片
SHARP-1008: Dbg: login, user: style: sass文件除虫
SHARP-1009: Opt: profile:
git init
此命令自不必说, 在本"目录"[pwd]初始化一个代码仓库(repo), 最好第一个提交仅仅包含.gitignore
README
等初始化文件.
e.g. 如果远程有一个空仓, 比如在github上创建了一个repo2, 要把新创建的本地仓库推送到远程仓库:
remote
, 即 git remote add <repo2-alias> <repo2-uri>
up-stream
, 即 git push -u <repo2-alias> <repo2-branch-name>
git add
该命令两种功能:
配合 git commit
命令使用
git commit -m '<comment>'
该命令用于提交代码: 将暂存区中的新文件和新的变更提交到本地仓库中 -m 参数用于引导添加"提交说明(commit comment)" 已经在上文commit/comment中详细描述
git pull
, git pull --rebase
该命令用于从远程仓库拉取代码到本地, 默认当前分支, 还可以加参数git pull <repo2-alias> <repo2-branch-name>
来拉取对应分支
git pull --rebase
在拉取远程分支的时候还顺便处理rebase, 而非merge
git push
, git push <repo2-alias> <repo2-branch-name>
推送分支到远程服务器
git push <repo2-alias> <repo2-branch-name>
- 慎重! 慎重! 慎重! 可以加参数
-f
: 前提是这个一定不是master/release/raw/develop, 而是个人的分支或临时分支
git merge
不多说了, 废柴操作~
git checkout
功能
git checkout <branch-name>
, 另外可以用 -b 参数来检出制定提交为新分支git checkout <commit-id> -b <new-branch-name>
git checkout <commit-id>
git checkout -f <fileName>
git checkout -p <pathOfFolder>
git reset -- <file-names>
git cherry-pick <commit id>
这个功能相当有意思, 能把某个指定的提交点作为补丁添加到当前分支的最前端.
使用场景很单调: 把合格的提交点摘取到重要的分支上.
e.g. 我把自己的3个提交在我自己的分支 xvno 上rebase-squash成了一个提交点 mixed, 切换到develop
分支上后, 直接git cherry-pick <mixed: commit-id>
git rebase -i <commit id>
, git rebase --continue
一般用于合并提交点
git的神器之一 rebase
, 无出其右者, 加上-i
之后, 就可以修改提交comment + 合并提交点 + 丢掉提交点...
添加--continue
之后, 能让暂停的rebase过程继续
git stash push/pop/list/clear/apply
stash: 藏匿处, 暗格;
git stash
可以把已经 git add
的变更移动到暗格里. 应用场景:
git add .
+ git stash
然后处理新需求; git stash list
查看曾经私藏了哪些代码, 并用 git stash pop [sn]
来取回, 或者用 git stash apply [sn]
来复制一份代码到当前工作环境, 这样就可以继续中断的工作了, git remote
做什么用?
git remote -v
git remote add <repo-name> <repo-uri>
有了remote, 就可以光明正大的 git push <repo-name> <branch-name>
了
branch
git branch
参数 r
表示 remote-tracking
-avr
, 查看分支-dDr
, 删除分支真正删除远程分支的方式 git push <repo-name> :<branch-name>
git checkout -b
就当前提交点新建一个分支git checkout -b newbie
用1个实例演示日常工作流程
已经推送新建的本地仓库到github
Refs
Tips
--
double-dash:change branch name and push to github