下载指定分支最简单的方法:
直接指定clone某个分支即可:git clone -b xxx git地址
日常方法:
git初始化:git init
git clone .git地址
切换分支
git branch 查看当前分支
git branch -a 先查看当前远端分支情况,包括其他分支
git checkout origin/xxx 选择远端xxx分支
git branch xxx 创建本地xxx分支
git checkout xxx 选择新创建的分支就可以了。
创建分支流程
第一步:git branch 查看当前分支情况
git branch //查看当前分支情况
第二步:git branch 分支名,新建一个自己的分支
git branch 分支名 // 新建一个自己的分支
第三步:git checkout 分支名,切换到新建的分支
git checkout 分支名 //切换到新建的分支
第四步:git branch,重新查看一下
第五步:git push -u origin 分支名,同步到github线上
git push -u origin 分支名 //将新建分支同步到线上
第六步:进行add追踪以及commit提交
git add --all
git commit -m "分支提交"
git push
第七步:查看线上github仓库,新的分支就创建好了。
会回退到服务器最新版本
git checkout -f HEAD
删除本地分支
git branch -d dev
删除远程分支
git push origin --delete xxx
Error Solve
Please move or remove them before you can switch branches.
git clean -d -fx ""
其中
x -----删除忽略文件已经对git来说不识别的文件
d -----删除未被添加到git的路径中的文件
f -----强制运行
Github恢复历史版本:
1. 查询历史对应不同版本的ID ,用于回退使用
$ git log --pretty=oneline
2. 恢复到历史版本
$ git reset --hard fae6966548e3ae76cfa7f38a461c438cf75ba965
3. 把修改推到远程服务器
$ git push -f -u origin master
4. 重新更新就可以了
git pull
git for windows下的Filename too long
git config --global core.longpaths true
Other branch operate
1. 在本地创建自己的分支
git branch dev
2. 同步分支到github上面
git push origin dev
3. 本地当前应该是master分支,切换到自己的分支上,然后把本地分支和远程分支做关联
git checkout dev
git branch --set-upstream-to origin/dev
4. 使用git branch -vv命令可以看到分支是否关联成功。
gitignore不生效
idea集成git过滤一些不必要提交到git上的文件以及文件夹的时候发现使用.ignore插件创建.gitignore来忽略提交文件并没有生效,每次commit还是带了一堆不必提交的文件,最后找到了处理办法:
只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:
git rm -r --cached .
git add .
git commit -m "update .gitignore file all"
其中-r是删除文件夹及其子目录
--cached是删除暂存区里的文件而不删除工作区里的文件
修改最后一次提交
有时候我们提交完了才发现漏掉了几个文件没有加,或者提交信息写错了。想要撤消刚才的提交操作,可以使用 --amend 选项重新提交:
$ git commit -m 'initial commit'
$ git add forgotten_file
$ git commit --amend
ctrl+c => !wq