1

git リポジトリを作成し、vim-plugins (vundle によってインストールされます) を追加しました。このリポジトリを github にプッシュし、このリポジトリを別のサーバーにクローンした後、vim-plugin のディレクトリが空で、ディレクトリとファイルが下にあることがわかりました。 vim-plugin のディレクトリがすべて欠落している

作り方:

$ make a new test user in Linux, then ( su - test )
$ git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle # install vundle
$ echo "
  set nocompatible
  filetype off
  set rtp+=~/.vim/bundle/vundle/
  call vundle#rc()
  Bundle 'gmarik/vundle'
  Bundle 'Lokaltog/vim-powerline'
  filetype plugin indent on
  " >> .vimrc
$ vim # run vim command `:BundleInstall`
$ mkdir vimgitrepo && cd vimgitrepo && git init
$ cp -a ~/.vim/bundle .
$ git status
  # On branch master
  # Untracked files:
  #   (use "git add <file>..." to include in what will be committed)
  #
  #       bundle/
  nothing added to commit but untracked files present (use "git add" to track)
$ git add .
$ git status
  # On branch master
  # Changes to be committed:
  #   (use "git reset HEAD <file>..." to unstage)
  #
  #       new file:   bundle/vim-powerline
  #       new file:   bundle/vundle
  #

ご覧のとおり、dir のみが追加されます。

$ git commit -m'test'
$ git push -u origin master

そして、このレポを別の場所にクローンすると、空のディレクトリしか存在しません。

githubページはこちら

4

3 に答える 3

1

GitHub にプッシュする前に、これらのファイルをローカル リポジトリに追加してコミットしたことを確認する必要があります。
たとえば、「GIT add vs push vs commit」を参照してください。

また、ディレクトリ ( など.vim/bundle/vim-powerline) が空でないことを確認してください (そうでない場合、それらはインデックスに追加されません: バージョン管理できるのはファイルのみです)。

また、それらのディレクトリ内のファイルが (.gitignoreファイルによって) 無視されていないかどうかも確認してください。
「git で無視されたファイルを表示する」で説明されているように、次の操作を行います。

git clean -ndX

追加されないファイルを一覧表示します。

最後に、シンボリックリンクであるディレクトリはfile として追加されません。
それは説明します:

  • あなたのgitステータスが新しいファイルを言及している理由、および
  • そのレポのクローンが空のディレクトリを表示する理由。

シンボリックリンクであるファイルに対してgitは何をしますか?」 を参照してください。

git は、通常のファイルの場合と同様に、リンクの内容 (つまり、リンク先のファイル システム オブジェクトのパス) を「blob」に格納するだけです。
次に、名前、モード、およびタイプ (シンボリック リンクであることを含む) を、それを含むディレクトリを表すツリー オブジェクトに格納します。

于 2013-05-02T05:51:09.927 に答える
0

git push の代わりにこのコマンドを試してみてください。git push オリジンマスター

また、異なるマシン間で vim プラグインを共有したい場合は、別の質問 How to share one vimrc file between multiple clients? に記載されている解決策を試すことができます。

于 2013-05-02T11:25:46.050 に答える