将项目上传到 github 时如何修复 "refusing to merge unrelated histories"?
How to fix "refusing to merge unrelated histories" when uploading project to github?
我已经在 windows 机器上安装了 Github 桌面和 git,我有一个 github 帐户并创建了一个虚拟存储库。
当我打算通过 git bash 命令行上传我的包时,它失败并出现错误:
致命:拒绝合并不相关的历史
我通过使用来自该社区的现有解决方案,使用了多种方法来解决这个问题,但仍然没有解决问题。有谁知道解决这个问题的任何技巧?如何将我的项目成功上传到 github?
尝试以下操作:
cd /path/to/my/repo
git init
git add --all
git commit -m "Initial commit"
git remote add origin <remote repo URL>
git push -u origin master
请务必将 /path/to/my/repo
替换为您的存储库目录的路径(例如 C:\Users\jvrat\Documents\MSPC
),并将 <remote repo URL>
替换为您的远程存储库的 URL(例如 https://github.com/username/repo_name.git
).
第一步是在您的本地项目目录中初始化 git:
git init
在那之后,您的目录是一个本地 git 存储库并包含一个 .git 目录。
然后你基本上创建文件并通过
将它添加到你的仓库中
git add <file-name>
现在可以跟踪添加到您的存储库中的文件。如果您想提交对添加的文件所做的所有更改,您只需要
git commit "Commit message"
这些都位于您的本地 git 存储库中。
要将本地存储库连接到远程存储库,您必须发出另一个命令:
git remote add origin <remote repo URL>
'origin'和后面的URL代表远程名称及其URL。
您现在可以通过
将您的本地更改推送到您的原始仓库
git push <remote-name> <branch-name>
这就是你的情况
git push origin master
因为现在你只有一个 master 分支。
您可以通过
检查本地仓库及其连接的远程仓库的状态
git status
只是分享 rebase 对我有用。我在 GitHub 上有一个新项目,我想 link 在本地创建一个新的回购协议,并不断得到 fatal: refusing to merge unrelated histories
。什么有效:
git remote add origin http://github.com/MyName/MyProjectName -f
git branch -u origin/master
git pull -r # R for rebase, makes the magic happen
输出:
First, rewinding head to replay your work on top of it...
Applying: Initial Commit
git log
输出(第一个是 GitHub 回购,第二个是本地):
c7f843e Initial Commit (AmitaiB, 4 minutes ago)
97100be Initial commit (Amitai Blickstein, 9 minutes ago)
PS 有趣,我从来没有注意到来自 GitHub 的默认初始提交消息是 Initial Commit,而本地的是 Initial commit(小写)。我想我会将这个问题发送给 Jack Handy...
我已经在 windows 机器上安装了 Github 桌面和 git,我有一个 github 帐户并创建了一个虚拟存储库。
当我打算通过 git bash 命令行上传我的包时,它失败并出现错误: 致命:拒绝合并不相关的历史
我通过使用来自该社区的现有解决方案,使用了多种方法来解决这个问题,但仍然没有解决问题。有谁知道解决这个问题的任何技巧?如何将我的项目成功上传到 github?
尝试以下操作:
cd /path/to/my/repo
git init
git add --all
git commit -m "Initial commit"
git remote add origin <remote repo URL>
git push -u origin master
请务必将 /path/to/my/repo
替换为您的存储库目录的路径(例如 C:\Users\jvrat\Documents\MSPC
),并将 <remote repo URL>
替换为您的远程存储库的 URL(例如 https://github.com/username/repo_name.git
).
第一步是在您的本地项目目录中初始化 git:
git init
在那之后,您的目录是一个本地 git 存储库并包含一个 .git 目录。 然后你基本上创建文件并通过
将它添加到你的仓库中git add <file-name>
现在可以跟踪添加到您的存储库中的文件。如果您想提交对添加的文件所做的所有更改,您只需要
git commit "Commit message"
这些都位于您的本地 git 存储库中。 要将本地存储库连接到远程存储库,您必须发出另一个命令:
git remote add origin <remote repo URL>
'origin'和后面的URL代表远程名称及其URL。 您现在可以通过
将您的本地更改推送到您的原始仓库git push <remote-name> <branch-name>
这就是你的情况
git push origin master
因为现在你只有一个 master 分支。
您可以通过
检查本地仓库及其连接的远程仓库的状态git status
只是分享 rebase 对我有用。我在 GitHub 上有一个新项目,我想 link 在本地创建一个新的回购协议,并不断得到 fatal: refusing to merge unrelated histories
。什么有效:
git remote add origin http://github.com/MyName/MyProjectName -f
git branch -u origin/master
git pull -r # R for rebase, makes the magic happen
输出:
First, rewinding head to replay your work on top of it...
Applying: Initial Commit
git log
输出(第一个是 GitHub 回购,第二个是本地):
c7f843e Initial Commit (AmitaiB, 4 minutes ago)
97100be Initial commit (Amitai Blickstein, 9 minutes ago)
PS 有趣,我从来没有注意到来自 GitHub 的默认初始提交消息是 Initial Commit,而本地的是 Initial commit(小写)。我想我会将这个问题发送给 Jack Handy...