无论

时间:2016-08-13 04:49:47

标签: git version-control

我坚持了很长时间并且无法找到解决方案 我有一个名为master的分支。

我在文件夹application中有一些较旧版本的master。

现在我想要用远程主机中的最新代码替换当前文件夹内容的命令。

可能有很多情况,但我想忽略下面的所有内容

  1. 可以在本地修改文件
  2. 可以有未跟踪的文件
  3. 可以使用全新代码强制推送主人
  4. 可以有未经过处理的文件,这些文件现在都在主文件中,这样当你拉出来时就有可能与远程文件发生合并冲突
  5. 当你做git状态时,可能会说
    1. On branch master and uptodate
    2. On branch master ur branch and origin / master has diverged
    3. 在分支主数据上,当前正在进行重组
    4. 你处于独立状态
    5. 你在分支开发
  6. 因此,对于所有上述情况,我想忽略,我只想要最新的代码。

    最简单的方法是删除文件夹并克隆

    另一种方式是在下面,真的那么脏,不想那样做

    cd /application && git reset --hard && git rebase --abort | true && git checkout master && git fetch origin && git reset --hard  origin/master
    

1 个答案:

答案 0 :(得分:1)

您最好的选择是查看出处/主人。这避免了必须处理本地主分支的状态和任何合并问题。

# Abort a rebase, if any
git rebase --abort

# Fetch the latest from origin
git fetch origin

# Check it out and throw out any changes
git checkout -f origin/master

# Clean out all untracked files.
git clean -dxf