1.第三章。
1.git commit -m "" / --message=" " ---> "-" + 缩写,"--" +全写 。
2. git chekout -- index.heml 同时 “--” 标示文件名,可以不要。
3.git show-branch --more=4 " --" 添加参数
4.git diff commitida commitidb
5.git mv hello.txt rename.txt <=> mv hello.txt rename.txt , git rm hello.txt, git add rename.txt
6. 配置文件 : git config -l .git/config , ~/.gitconfig /etc/gitconfig
git config ( --global ) user.name "liu" , git config --unset ( --global ) user.name
git log --author=liuping3
2. 第四章 git 基本概念
9.第八章 DIFF
1. git diff //索引和工作空间差异
2.git diff commit (HEAD) 工作空间和给定提交差异
3.git diff --cached commit (HEAD) 索引和给定提交差异
4.git diff commitid1 commitid2 两个给定提交差异
9.第九章 合并 冲突
1.
git merge ,git log --graph
2. git diff 查看冲突 内容,解决冲突后git add ,git commit 。
3. git status / git ls-files -u 查看冲突的文件 。
4.git log --merge --left-right -p (file) 查看冲突提交历史.
5.解决冲突后想回恢复,在git commit 之前,可以 git reset --hard HEAD ,如果已经 提交,可以 git reset --hard ORIG_HRAD 会弄丢工作去脏数据,另一个选择 git checkout -m
ps :可以在git merge 之前对工作空间脏数据 git stash ,git reset --hard ORIG_HRAD 不会丢失暂存数据
10.第十章 更改提交
commit add 工作区
1.
git reset --soft HEAD yes no no
2.git reset --mixed HEAD yes yes no
3.git reset --hard HEAD yes yes yes
4.git add 文件之后, 恢复 工作区 git reset (--mixed) HEAD file
5. git reset --soft HEAD^ 恢复到上一次 git reset --soft HEAD~3 前3次
6.git cherry-pick 不改变历史,添加历史。每个commitid独立,如果耦合会冲突,如果独立,可以改变顺序
7. git cherry-pick commitid1 .. commitid2 选择一个范围内的提交。
8.git revert commitid 添加历史,撤销提交。
9.git checkout -- file ,文件从对象库里检出,工作空间该文件修改丢失。
如果文件已经git add file , git checkout -- file 不能恢复add 暂存的部分,需git reset (--mixed) HEAD file ,将暂存的恢复到工作空间,然后,git checkout --file 丢掉更改,和HEAD 内容一致。
10. git commit --amend 修改上一次提交,使得HEAD指向新的commitid
11. git rebase master develop 将 develop相对master最新的提交,将develop移动到基于 master HEAD之后。
12. git rebase --continue /--skip /--abort
13.git rebase -i HEAD~2
将第二个pick修改为squash或者s,然后输入":wq”退出。
git push --force origin maste
10.第十一章 储藏
1.git stash save "WIP Doing real work on my stuff "//保存提示信息,便于回忆
2. git stash
3. 开服被打断,保留现场方法:
git checkout -b save_state
git commit -a -m "save sate "
git checkout master //修复bug
git commit -a -m "fix someting "
//恢复开发
git checkout save_state
git reset --soft HEAD^ //恢复被打断时候的状态, 索引状态恢复。
4.git stash pop //如果成功,会删除储藏,如果冲突,解决冲突之后需要
git stash drop 。<==> git stash apply + git stash drop
5. git stash apply 如果不希望自动删除
6.git stash list //保存的列表
7.git stash show -p //展示顶部stash信息
8.
git stash show -p stash@{1} //展示指定stash 信息
//本地改变,和远程冲突,
9.git stash save ,
git pull --rebase ,
git stash pop ,
git push //
10. git stash branch branchname //将本地储藏的保存到另个分支
git push origin local_branch:remote_branch
这个操作,local_branch必须为你本地存在的分支,remote_branch为远程分支,如果remote_branch不存在则会自动创建分支。
类似,
git push origin :remote_branch,local_branch留空的话则是删除远程remote_branch分支。
10.第十二章 romate