代码改变世界

Ideal中git常用命令

2020-10-30 11:02  Tanwheey  阅读(336)  评论(0编辑  收藏  举报

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