仅将一个文件夹推送到远程仓库

Dav*_*ave 17 git

我正在使用Git 1.7.4.1.我想将我在一个文件夹上执行的提交推送到我的远程仓库.如何仅将更改从一个文件夹推送到我的远程仓库?我发现的所有文档都只列出了如何推送整个回购......

davea-mbp2:systems davea$ git push origin trunk
Password: 
To http://dalvarado@mydomain.com/systems.git
 ! [rejected]        trunk -> trunk (non-fast-forward)
error: failed to push some refs to 'http://dalvarado@mydomain.com/systems.git'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes (e.g. 'git pull') before pushing again.  See the
'Note about fast-forwards' section of 'git push --help' for details.
Run Code Online (Sandbox Code Playgroud)

我被警告的冲突不适用于我想要推送的文件夹.任何帮助表示赞赏, - 戴夫

seh*_*ehe 3

Git 不像颠覆。简短的回答是,你不能。

您应该考虑根据远程更改重新调整您的更改(仅相关的更改)

git rebase -i origin/trunk
Run Code Online (Sandbox Code Playgroud)

应该让你开始。请务必阅读一路上的评论和说明。man git-rebase当然也有。

最后,当您对结果感到满意时,您可以从那里创建一个新分支

 git checkout -b rebased HEAD
Run Code Online (Sandbox Code Playgroud)

或者你可以选择让它成为你的新主人。我将让您自行决定如何在本地管理您的分支机构(因为您没有告诉我们它们)。

然后推动就很容易了

 git push origin trunk
Run Code Online (Sandbox Code Playgroud)