侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

Github 下载代码时如何强制覆盖本地文件

2023-12-16 星期六 / 0 评论 / 0 点赞 / 136 阅读 / 1789 字

在使用Git(Github,GitStash等)都是通过分支概念来协同操作。最近遇到一个问题,帮同事review code的时候 ,当我切换到别人的已提交分支的时候,同时我本地代码有更改,这时候执行g

在使用Git(Github,GitStash等)都是通过分支概念来协同操作。最近遇到一个问题,帮同事review code的时候 ,当我切换到别人的已提交分支的时候,同时我本地代码有更改,这时候执行

git pull

发现在项目的上面有向下的箭头并且显示多少数字,显示远程代码没下下载下来,有一个简单粗暴的解决方法就是删除本地代码,从git 上重新down一份

git clone .....

这显示不是一个好的方案,不到万不得已,千万不要使用,虽然百分百有效,但是同时影响时间。

下面说第二种 通过reset 方式来下载并且覆盖本地代码。

在此以master分支来举例,需要执行的时候要换成自己分支的名字

git fetch origin master(master也可以替换成你自己想更新的分支名)git reset --hard mastergit pul

fetch origin branch 是从远程获取最新代码如何执行 fetch --all 是获取所有分支,一般没有必要。

以上可以强制下载最新git代码,但如果想要保存本地local文件,同时下载最新代码叫,这也是可以实现的。

git checkout mastergit branch new-branch-to-save-current-commitsgit fetch origin mastergit reset --hard master

在fetch之前,创建一个新的分支,这样本地的change会被存储在新建的分支里,注意这个local change必须是commited,未commited还是要被覆盖的!

这里有详细的评论,我抽取了其中精华部分,自己在项目中已使用。http://stackoverflow.com/questions/1125968/how-to-force-git-pull-to-overwrite-local-files/8888015#8888015

广告 广告

评论区