如何在 GitHub 主仓库上获取新文件

How to get new files on a GitHub master repo

我目前正在上一门课程,教授间歇性地在 public 存储库上发布作业。我在我的电脑上克隆了这个 repo,但我不知道如何获取新发布的作业。

本质上,我想提取新文件而不删除我对已编辑的旧文件所做的工作。我创建一个叉子吗?如果是这样,我如何从上游拉取更改并保留我的更改?如何解决在我的作业版本被编辑时发生的冲突?等等

非常感谢任何帮助,因为到目前为止,我一直在移动我的所有文件,然后完全重新下载更新的存储库。

此外,我正在使用 GitHub 桌面

我不熟悉 GitHub Desktop,但希望这些命令在 GUI 中有简单的等价物。如果没有,您可以尝试在 Git Bash(命令行)中使用备份分支。

首先,执行 git add file1 file2 等操作并提交您的更改,然后是 git commit -m "change x"

然后,这里有几个可能的选项来更新您当前的分支:

  • git pull origin master 将首先从远程获取内容,然后将其合并到您当前的分支。如果您最终遇到合并冲突,git 会告诉您如何进行。您可以在编辑器或 GitHub Desktop 中解决冲突。出于这个原因,您最终可能会进行合并提交。
  • git pull --ff-only 将执行上述操作,但它 更安全 因为它不会创建合并提交。如果历史是线性的并且它可以是 fast-forwarded(因此是 ff-only),它只会更新您的本地主机。
  • 您也可以尝试变基来更新您的分支,这将在主历史记录之上重播您的更改。这使得您的提交是线性的,因此非常整洁,但请记住您应该 而不是 重新设置 public 历史记录(例如,如果您正在与分支机构中的其他人一起工作)。没有对此进行过多的详细介绍,因为我认为如果您不关心提交历史,这可能有点矫枉过正。

如有疑问,请在尝试任何操作之前使用 git checkout -b my-backup 创建当前分支的备份分支 :)