如何在Git中拉和推子目录

时间:2015-06-11 15:17:05

标签: git git-push git-checkout sparse-checkout

我的要求是仅从主仓库中提取和推送特定文件夹的文件。我使用的方法只是帮助我拉特定文件夹的文件而不是推送文件。

所以在我的主仓库里,我的文件夹结构如下所示。

mainfolder
  examfold1
  examfold2
  examfold3

这就是我在做的事情。

git clone http://123456@onestash-test.com/mainfolder
cd mainfolder
git config core.sparseCheckout true
echo examfold3/*> .git/info/sparse-checkout

当我拉动时它工作正常,它不会将文件带到其他文件夹上,但它也没有为examfold3带来文件,当我从本地仓库进行一些文件更改后推送时我得到以下错误。

! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'http://123456@onestash-test.com/mainfolder'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

我相信git认为我的本地仓库不与master同步,因为我没有为其他文件夹提取文件。任何帮助将非常感激。提前致谢。

0 个答案:

没有答案