GIT
>>>>>>>>>>>>>>>代码提交流程:
在JIRA上创建分支
git pull
git branch 查看分支是否成功
git checkout [branch_name] 切换到该分支上
完成代码修改,测试通过后,开始提交代码
git add *
git commit -m "your description"
git push origin [your branch]
然后到stash里面提交pull request等待review通过,然后上库到仓库中
review 通过后点击Merge按钮,代码就提交到了对应的仓库上了。
>>>>>>>>>git reset command<<<<<<<<<<<
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD <file>,就回到了场景1,第二步按场景1操作。
同步远程分支最新的到本地当前分支
git pull -p
>>>>>>>>>>>>去掉修改
1. 本地修改了一堆文件(并没有使用git add到暂存区),想放弃修改。
单个文件/文件夹:
$ git checkout -- filename
所有文件/文件夹:
$ git checkout .
2. 本地新增了一堆文件(并没有git add到暂存区),想放弃修改。
单个文件/文件夹:
$ rm filename / rm dir -rf
所有文件/文件夹:
$ git clean -xdf
// 删除新增的文件,如果文件已经已经git add到暂存区,并不会删除!
3. 本地修改/新增了一堆文件,已经git add到暂存区,想放弃修改。
单个文件/文件夹:
$ git reset HEAD filename
所有文件/文件夹:
$ git reset HEAD .
4. 本地通过git add & git commit 之后,想要撤销此次commit
$ git reset commit_id
这个id是你想要回到的那个节点,可以通过git log查看,可以只选前6位
// 撤销之后,你所做的已经commit的修改还在工作区!
$ git reset --hard commit_id
这个id是你想要回到的那个节点,可以通过git log查看,可以只选前6位
// 撤销之后,你所做的已经commit的修改将会清除,仍在工作区/暂存区的代码不会清除!
git stash : 保存当前未完成的分支修改,然后把其它事情弄完后,切换回来继续工作!
git stash save “修改的信息"
git checkout 其它分支
git checkout 回到上次的分支
git stash list 查看所有的结果
git stash apply stash@{number}
git pull -help
用法:git fetch [<选项>] [<仓库> [<引用规格>...]]
或:git fetch [<选项>] <组>
或:git fetch --multiple [<选项>] [(<仓库> | <组>)...]
或:git fetch --all [<选项>]
-v, --verbose 更加详细
-q, --quiet 更加安静
--all 从所有的远程抓取
-a, --append 追加到 .git/FETCH_HEAD 而不是覆盖它
--upload-pack <路径> 上传包到远程的路径
-f, --force 强制覆盖本地分支
-m, --multiple 从多个远程抓取
-t, --tags 抓取所有的标签和关联对象
-n 不抓取任何标签(--no-tags)
-p, --prune 清除远程已经不存在的分支的跟踪分支
--recurse-submodules[=<on-demand>]
控制子模组的递归抓取
--dry-run 演习
-k, --keep 保持下载包
-u, --update-head-ok 允许更新 HEAD 引用
--progress 强制显示进度报告
--depth <深度> 深化浅克隆的历史
--unshallow 转换为一个完整的仓库
--update-shallow 接受更新 .git/shallow 的引用