linux - 将 Github repo 推送到其他现有帐户(而不是默认帐户)?

标签 linux git github push

<分区>

我目前正在学习 Github 的基础知识。我首先使用 XXXXXXX@XXXXXXX 电子邮件和 XXXXXXXXX 用户名通过网站创建了一个帐户。然后我开始在我的 Linux 机器上使用 git 命令:

  1. 打开我想要 repo 到 github 的目录并用'git init'初始化
  2. 对于这个例子,我只在当前目录中“git add”一个目录,它似乎可以很好地“跟踪”该文件集合。
  3. 然后我提交了“git commit”,它也运行良好。

我的问题是 git 当然默认使用基于我的 linux 帐户的凭据。

然后我尝试这样做: git config --global user.name XXXXXXXXXX(现有git账号用户名) git config --global user.email XXXXXX@XXXXXX(现有git账号邮箱)

以上成功更改了我的帐户信用,这是将我的新本地存储库连接到我现有帐户的正确方法吗?

此外,我尝试对同一个子目录执行另一个“git add”,但没有给出任何警告...但是这次在 git commit 上,所有文件都显示为未跟踪。如何将我已经提交(到错误的帐户)的内容重新推送到新连接的正确帐户?

抱歉,如果我的 git 语法不对,但仍在流行。谢谢!

最佳答案

您混淆了您的提交身份和您的 GitHub 帐户。这些实际上彼此无关。如果您创建提交,作者和提交者信息将根据 user.nameuser.email 获取。如果您在提交后更改这些,它们仅对以后的提交有效。如果你想编辑现有的提交,你必须重写提交,或者你只是做了一个提交,你可以删除 .git 并重新开始。

实际上你可以用任何你喜欢的身份提交,这与你的 GitHub 帐户完全无关。好吧,它间接地有,但只是在显示提交时链接到你的帐户,它使用的电子邮件地址被添加到你的 GitHub 帐户。

但是用于提交的身份对您是否能够将更改推送到 GitHub 没有影响。仅在推送时,您必须确保使用正确的 GitHub 帐户凭据才能推送提交。

关于linux - 将 Github repo 推送到其他现有帐户(而不是默认帐户)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44311713/

相关文章:

linux - 如何使用输入选项 I 在 Linux 中强制安装应用程序?

linux - ps -e、rss 与 vsz 的结果

git - 在源代码管理中存储第 3 方 DLL (Azure DevOps/TFS/Git)

Git命令解释: push, pull、fork、merge

python - 无法直接从 Github 在 Google Colab 中安装 Sk-learn (scikit-learn)

c - linux 打开标志中的按位或

linux - 在 Linux 中控制连接的蓝牙设备音量的命令?

git:查找哪个 merge 将提交到当前分支

git - Cygwin 或 Git Bash 命令窗口?

python - 从 GitHub Gist 导入 Python 模块