如何在 GitHub 主仓库中获取新文件
Posted
技术标签:
【中文标题】如何在 GitHub 主仓库中获取新文件【英文标题】:How to get new files on a GitHub master repo 【发布时间】:2021-01-16 15:22:13 【问题描述】:我目前在一门课程中,教授间歇性地在公共回购中发布作业。我在我的计算机上克隆了这个 repo,但我不知道如何获取新发布的作业。
基本上,我想提取新文件而不删除我在已编辑的旧文件上所做的工作。我要创建一个叉子吗?如果是这样,我如何从上游提取更改同时保留我的更改?当我的作业版本被编辑时,如何解决将发生的冲突?等等。
非常感谢任何帮助,因为到目前为止,我刚刚移动了所有文件,然后完全重新下载了更新的 repo。
另外,我正在使用 GitHub 桌面
【问题讨论】:
【参考方案1】:我不熟悉 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
将执行上述操作,但它更安全,因为它不会创建合并提交。如果历史是线性的并且可以快速转发(因此仅限 ff),它只会更新您的本地 master。
您也可以尝试变基以更新您的分支,这将在主历史记录之上重放您的更改。这使您的提交线性化,因此非常整洁,但请记住,您应该不重新设置公共历史记录(例如,如果您正在与分支上的其他人一起工作)。没有对此进行太多详细介绍,因为我认为如果您不关心提交历史记录,这可能有点过头了。
如有疑问,请在尝试任何操作之前使用 git checkout -b my-backup
创建当前分支的备份分支 :)
【讨论】:
以上是关于如何在 GitHub 主仓库中获取新文件的主要内容,如果未能解决你的问题,请参考以下文章