git常用命令:
$ git pull 拉取代码
git branch 查看本地的分支
git branch -a 查看所有的分支(包括远端服务器上的)
git checkout -b 1.40.0 origin/1.40.0 检出代码
git checkout V20191128_risk_fea 切换分支
找不到想要版本的解决方法:
先拉取 git pull
再checkout到你想要的分支
切换分支报错:
IDEA中分支切换error: The following untracked working tree files would be overwritten by checkout
原因:通过错误提示可知,是由于一些untracked working tree files引起的问题。所以只要解决了这些untracked的文件就能解决这个问题。
打开SourceTree通过命令行,进入本地版本仓库目录下,直接执行git clean -d -fx即可(删除 一些 没有 git add 的 文件)。
git clean 参数
-n 显示将要删除的文件和目录;
-x -----删除忽略文件已经对git来说不识别的文件
-d -----删除未被添加到git的路径中的文件
-f -----强制运行
在以上步骤完成后,还未解决的话,有时需要在项目上右击 -> maven -> Reimport
git pull报错:
HelloWorld:ebk-product-api admin$ git pull
error: Pulling is not possible because you have unmerged files.
hint: Fix them up in the work tree, and then use 'git add/rm <file>'
hint: as appropriate to mark resolution and make a commit.
fatal: Exiting because of an unresolved conflict.
本地的push和merge会形成MERGE-HEAD(FETCH-HEAD), HEAD(PUSH-HEAD)这样的引用。HEAD代表本地最近成功push后形成的引用。MERGE-HEAD表示成功pull后形成的引用。可以通过MERGE-HEAD或者HEAD来实现类型与svn revet的效果。
解决:1.将本地的冲突文件冲掉,不仅需要reset到MERGE-HEAD或者HEAD,还需要--hard。没有后面的hard,不会冲掉本地工作区。只会冲掉stage区。
git reset --hard FETCH_HEAD