2016-07-14 8 views
1

私はgithubの上の静的なブログを展開するHexo [https://hexo.io/]を使用すると、非常に最初に、私はこのようなファイルやフォルダを生成するhexoフォルダを初期化するために、「hexoの初期化」を実行します。"hexo init <folder>"はどんなgitコマンドを実行しますか?


├──_config.yml
├──package.json
├──足場
├──ソース
| ├──_drafts
| └──_posts
└──テーマ

しかし、私は、コマンド「hexoの初期化」を実行すると、私はそれが実際のgitコマンドを実行見つける:

[[email protected] buwei]# hexo init blog 
    INFO Cloning hexo-starter to /home/buwei/blog 
    Cloning into '/home/buwei/blog'... 
    remote: Counting objects: 53, done. 
    remote: Total 53 (delta 0), reused 0 (delta 0), pack-reused 53 
    Unpacking objects: 100% (53/53), done. 
    Submodule 'themes/landscape' (https://github.com/hexojs/hexo-theme-  landscape.git) registered for path 'themes/landscape' 
    .... 

だから私は "を何のgitコマンドを知りたいですhexo init "を実行しますか?

答えて

2

hexojs/hexo-cli/lib/console/init.js#initConsole()から、それは主にgit cloneを実行します。

if (args.clone) { 
    promise = spawn('git', ['clone', '--recursive', GIT_REPO_URL, target], { 
     stdio: 'inherit' 
    }); 
    } else { 
    promise = copyAsset(target); 
} 

をそれからそれはGitのディレクトリ(.git)とモジュール(.gitmodules

return promise.catch(function() { 
    log.warn('git clone failed. Copying data instead'); 

    return copyAsset(target); 
    }).then(function() { 
    return Promise.all([ 
     removeGitDir(target), 
     removeGitModules(target) 
    ]); 
    }).then(function() { 
    if (!args.install) return; 

    log.info('Install dependencies'); 

    return spawn('npm', ['install', '--production'], { 
     cwd: target, 
     stdio: 'inherit' 
}); 
0

hexo initはあなたの主を与えるためにここにある削除ブログの構造。 gitコマンドが利用可能であれば、それはhexo-starterリポジトリのgit cloneを実行します。それ以外の場合は、hexo-starterのソースを含むsubmodule - assets @ 221419bのコピーを作成します。

関連する問題