分支
- 查看本地分支:
git branch
- 查看本地及远程分支:
git branch -a
- 创建分支,比如创建test分支:
git branch test
- 切换到指定分支,比如test分支:
git checkout test
- 把test分支提交到远程仓库
git push origin test
- 删除指定分支,比如删除test分支:
git branch -d test
- 合并分支,比如把当前分支合并test分支上:
git merge
- 远程新建了一个分支,本地没有该分支,使用:
git checkout --track origin/branch_name
进行关联,这时本地会新建一个分支名叫 branch_name ,会自动跟踪远程的同名分支 branch_name。 - 如果本地新建了一个分支 branch_name,但是在远程没有。这时候 push 和 pull 指令就无法确定该跟踪谁,一般来说我们都会使其跟踪远程同名分支,所以可以利用 git push –set-upstream origin branch_name ,这样就可以自动在远程创建一个 branch_name 分支,然后本地分支会 track 该分支。后面再对该分支使用 push 和 pull 就自动同步。
git push --set-upstream origin branch_name
文件的修改
- 改乱了工作区某个文件的内容,想直接丢弃工作区的修改时(场景1),用命令
git checkout -- file
- 不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令
git reset HEAD file
,就回到了场景1,第二步按场景1操作。
利用git stash
-
git stash
可用来暂存当前正在进行的工作, 比如想pull 最新代码, 又不想加新commit, 或者另外一种情况,为了fix 一个紧急的bug, 先stash, 使返回到自己上一个commit, 改完bug之后再stash pop, 继续原来的工作。 -
git stash pop
恢复改动。如果你要恢复的是最近的一次改动,git stash pop即可,我用这个用的最多。如果有多次stash操作,那就通过git stash list查看stash列表,从中选择你想要pop的stash,运行命令git stash pop stash@{id}或者 git stash apply stash@{id}即可。这方面网上的资料挺多的。
忽略文件
1、通过定义在项目目录下定义.gitignore文件,把需要忽略的内容写在路面,例如:
.idea
target
就是忽略掉.idea及target文件夹内的文件
2、上述方法如果失效了,可能是文件原本就被跟踪了,解决方法是删除缓存,参考:https://www.cnblogs.com/youyo…
代码回滚
1、git reset –hard commit_id 退到/进到 指定commit的sha码
2、git push origin huangy_0829 –force 强制推送到远程分支