git保留本地新文件的同时同步远程更新并上传修改

要在保留本地新文件的同时同步远程更新并上传修改,最推荐的方法是使用 git pull --rebase

情况1

以下是标准操作步骤:

  1. 暂存本地修改

在拉取之前,先将本地新增的文件和修改加入暂存区。

1
2
git add .
git commit -m "保存本地新增文件和修改"

注:如果不先 commit,拉取时可能会产生冲突。

  1. 拉取远程更新(使用 Rebase 模式)

使用 rebase 可以让本地提交“移动”到远程提交的最前端,保持提交历史整洁。

1
git pull --rebase origin <分支名>
  • 如果没有冲突:Git 会自动合并。

  • 如果有冲突:Git 会提示冲突文件。需要手动打开文件解决冲突,然后运行:

    1
    2
    git add <冲突文件>
    git rebase --continue
  1. 推送修改到远程仓库

完成拉取并解决可能的冲突后,即可推送。

1
git push origin <分支名>

情况2

进阶场景:如果不想现在就 Commit

如果还没写完代码,不想产生一个临时的 commit,可以使用 stash(储藏)

  1. 储藏本地修改git stash(注意:新增的文件需要先 git add 才能被储藏,或者使用 git stash -u)。
  2. 拉取远程更新git pull origin <分支名>
  3. 移回本地修改git stash pop
  4. 后续操作:修改完成后,再执行正常的 add -> commit -> push 流程。