Closed alphatr closed 3 years ago
git 的三棵树[工作目录,HEAD(主要的版本控制),stage(索引树,暂存树)]
git add/git stage
将工作目录的文件添加到 stage 树上(不完整的树);
git add [file/path]
git commit
将 stage 树 添加到 head 树上
git commit -a -m --amend
常用的三个参数
git checkout // 撤回未提交,未暂存的修改
git add // 添加文件到暂存区 git reset // 撤回添加到暂存区(不会修改工作目录)
git commit // 将 stage 区添加到 head git reset HEAD~1 // 从版本库撤回到工作区,撤回 git commit -a; git reset --soft HEAD~1 // 从版本库撤回到暂存区,撤回 git commit; git reset --hard HEAD~1 // 从版本库撤回并抛弃修改
HEAD(当前分支,this)->master->023AF4D4
git branch
git checkout -b
git merge // 产生新的提交 git rebase // 不产生新的提交
origin,不会随着提交更新,或者不会随着人为改动;
origin // 远程仓库名称
origin/master // 本地创建的指向远程 master 的指针 master // 本地的分支
git fetch // 拉取远程数据,并重设指向远程 master 的指针 git push // 将本地的数据推到远程;
git pull = git fetch + git merge origin/master
git pull --rebase = git fetch + git rebase origin/master
git push origin master:develop // 创建远程 develop 分支 git push origin test:test // 本地分支推送到远程 git checkout --track origin/develop // 拉去远程已有分支并切换到 git push origin :develop // 删除远程 develop 分支
git remote prune origin 清理本地被删除的远程分支 git remote -v 查看远程分支
http://wiki.nav.corp.qihoo.net/pages/viewpage.action?pageId=1769594
tig // git 命令行工具 git stash git rebase -i // 交互模式更改提交历史
资料:
Pro Git
提前思考:
大纲
目标