提交本地分支
git add . //会把本地所有untrack的文件都加入暂存区,并且会根据.gitignore做过滤
git commit -m "tmp" //将暂存区内容添加到本地仓库中
git push origin feature/myBranch //将本地仓库中的修改推送远程
本地操作
git status 查看当前状态
git checkout -b 分支名 建立并切换至该分支
git checkout -b 分支1 分支2 从本地分支2建立分支1
git checkout 分支名 切换到该分支
git branch 分支名 建立该分支但不切换过去
git branch -d 分支名 删除该本地分支
远程操作
git push origin --delete feature/liu 删除该远程分支
git push --set-upstream origin 分支名 把该分支推送到远程服务器
git push -u origin 分支名 这是上面的缩写
git clone git://github.com/schacon/grit.git 从远程服务器把代码拉过来
git checkout -b 分支1 origin/分支2 从远程分支2建立分支1
git pull 本地与服务器端同步,从远程获取代码并合并本地的版本
git branch --set-upstream-to=origin/feature/handong feature/handong 将本地分支与远程分支建立关联
IDEA操作
Reset Current Branch to Here
回滚到当前提交后的版本
记得选择hard
Sourcetree操作
变基
就是合并代码的一种方式,线性化合并。
分支
以选中的位置为基础创建新的分支
提交回滚
回滚到选中的提交不存在时的状态。
回滚
git reset --hard 版本号
git reflog
commit
Git 仓库中的提交记录保存的是你的目录下所有文件的快照,就像是把整个目录复制,然后再粘贴一样,但比复制粘贴优雅许多!
Git 希望提交记录尽可能地轻量,因此在你每次进行提交时,它并不会盲目地复制整个目录。条件允许的情况下,它会将当前版本与仓库中的上一个版本进行对比,并把所有的差异打包到一起作为一个提交记录。
Git 还保存了提交的历史记录。这也是为什么大多数提交记录的上面都有父节点的原因 —— 我们会在图示中用箭头来表示这种关系。对于项目组的成员来说,维护提交历史对大家都有好处。
branch
Git 的分支也非常轻量。它们只是简单地指向某个提交纪录 —— 仅此而已。
即使创建再多的分支也不会造成储存或内存上的开销,并且按逻辑分解工作到不同的分支要比维护那些特别臃肿的分支简单多了。