40

我已经分叉了一个私有存储库(一个 iPhone 项目),如下所示:

cd nameofdirectory
git init
git clone forkedURL

现在我想将我所做的更改推送到我的分叉存储库,以便主管理员可以查看我编写的代码并将其与主存储库合并。

如何在 MacOS 上使用终端将我所做的更改推送到我的分叉存储库?

4

3 回答 3

88

您不能推入其他人的存储库。这是因为 push 永久地将代码放入他们的存储库中,这并不酷。

您应该做的是要求他们从您的存储库中提取。这是在 GitHub 中通过转到另一个存储库并发送“拉取请求”来完成的。

关于 GitHub 的帮助本身有一篇内容非常丰富的文章:https ://help.github.com/articles/using-pull-requests


要与您自己的存储库交互,您有以下命令。我建议您开始更多地阅读 Git 以了解这些说明(大量在线资料)。

要将新文件添加到存储库或将更改的文件添加到暂存区域:

$ git add <files>

提交它们:

$ git commit

提交未暂存但已更改的文件:

$ git commit -a

推送到存储库(例如origin):

$ git push origin

只推你的一个分支(比如master):

$ git push origin master

要获取另一个存储库的内容(例如origin):

$ git fetch origin

仅获取其中一个分支(例如master):

$ git fetch origin master

要将分支与当前分支合并(例如other_branch):

$ git merge other_branch

请注意,这origin/master是您在上一步中从 中获取的分支的名称origin。因此,从原点更新您的主分支是通过以下方式完成的:

$ git fetch origin master
$ git merge origin/master

您可以在他们的手册页(在您的 linux 上或在线)中阅读所有这些命令,或遵循 GitHub 帮助:

于 2012-06-13T17:09:15.717 回答
12
git add myfile.h
git commit -m "your commit message"
git push -u origin master

如果您不记得需要更新的所有文件,请使用

git status
于 2012-06-13T17:08:09.430 回答
1

要一次添加所有文件,请使用git add -A

要检查 git 整体状态,请使用git log

于 2016-06-23T11:50:15.167 回答