从git仓库中拉出一个目录

Dan*_*Dan 10 git git-pull git-fetch git-checkout

我有一个git repo,我想做一个拉.git pull没有任何问题,我做正常.问题是我只想要一个特定的目录.我的想法是我可以使用.gitignore这样的规则的文件:

#Ignore all files
/
#Except the one I want
!/temp
Run Code Online (Sandbox Code Playgroud)

问题是这不起作用.这是正确的方法还是有更好的方法?

c00*_*ter 35

git pull 获取并合并远程分支.

.gitignore仅在本地工作,并将隐藏匹配的条目以显示git status和添加到索引git add.这不是你想要的.

您想要做的是fetch远程分支,从中提取您需要的目录/文件.

$ git fetch <remote> <branch>
$ git checkout <remote>/<branch> -- relative/path/to/file/or/dir
Run Code Online (Sandbox Code Playgroud)

文件/目录现在应该在您的分支中并添加到索引中.

  • @Ninad:不,`git checkout` 不保存历史,`git merge` 可以。 (2认同)