如果我之前已经上传了一个版本,如何将更新的本地存储库上传到 GitHub?

How to upload an updated local repo to GitHub if I previously uploaded a version already?

信不信由你,我对 GitHub 还是个新手。我正在使用 GitHub 桌面版。

我之前将我的存储库上传到 Github,我们称它为存储库 A。

现在我的本地主机上有一个与 Repo A 相同代码的版本,我们称它为 Repo A++,因为这个 repo 中的一些代码已经更新。旧的 .git 文件夹不再可用。

那么,如何将本地主机中的 Repo A++ 添加并推送到 Repo A?

我担心的是,当我从 GitHub 获取(或拉取,我不确定)Repo A 时,它会覆盖我在 Repo A++ 中的所有更新文件吗?

你的 Repo A 在 github.com 让我们假设它是这样的路径: 并假设您在本地主机上的目录是

/home/mewiben39/dev/RepoA++/

https://github.com/mewiben39/RepoA.git

切换到某个其他位置的目录让我们说 (以下是我假定的目录)

cd /home/mewben39/dev/git_clones/

然后

git clone https://github.com/mewben39/RepoA.git

这会将您的远程仓库克隆到本地(这也将包含 .git 文件夹,但它是隐藏的)

/home/mewben39/dev/git_clones/RepoA/

RepoA 包含来自 github.com 的代码,您希望将其与 RepoA++

合并

现在运行下面的命令

cp -rv /home/mewiben39/dev/RepoA++/*  /home/mewben39/dev/git_clones/RepoA/

上面的cp命令会将数据从RepoA++复制到RepoA

现在您已经在本地将代码从 RepoA++ 覆盖到 RepoA,

然后导航到您在本地克隆的 RepoA 和 git add . 最后提交代码 git commit -m 'copied code from RepoA++ to RepoA' then git push`.

记住 git add . 不推荐我这样做是因为你从更新的 RepoA++ 复制代码,你正在移动整个代码库。

另外,我使用了这个方法,因为你提到你更新了 RepoA++ 中的代码。

你也可以直接导航到 RepoA++ 并将远程 URL 设置为 git remote set main github.com/mewiben39/repoA.git

然后git用强制标志推送。不推荐使用强制标志。