2011-06-30 18 views
5

Githubには、HTMLページを置くことができる機能があります。 (Details here)。githubページを設定するときに、untrackedファイルを失うことが必要なのはなぜですか?

とにかく、私は最近、上記のページを置くためにこれを使用しました。その手順の基本は次のとおりです。

// In order to create a new root branch, first ensure that your working directory is clean by committing or stashing any changes. The following operation will lose any uncommitted files! You might want to run this in a fresh clone of your repo. 

$ cd /path/to/fancypants 
$ git symbolic-ref HEAD refs/heads/gh-pages 
$ rm .git/index 
$ git clean -fdx 

// After running this you’ll have an empty working directory (don’t worry, your main repo is still on the master branch). Now you can create some content in this branch and push it to GitHub. For example: 

$ echo "My GitHub Page" > index.html 
$ git add . 
$ git commit -a -m "First pages commit" 
$ git push origin gh-pages 

宣伝されているように、私の未追跡のファイルは消去されましたが、私はdirのコピーを作成し、必要なものだけを戻しました。ブランチ間での切り替え(私はSmartGitを使用しています)は、未追跡のファイルを消去していないようです。

しかし、私はGitの基本的な知識を広げたいと思っています。なぜgh-pagesが初めて設定されたときに、未追跡のファイルを拭く必要があるのだろうと思います。 gh-pagesブランチをセットアップし、htmlファイルを追加してコミットし、それをプッシュすることが可能であると思ったでしょう。そして元のブランチに戻ってください。

答えて

0

問題はgit clean git cleanは、現在の作業ツリーから任意の人跡未踏のファイルを削除しました。

未追跡のファイルには.gitignore個のファイルを設定し、-xフラグはそのままにしておくことができます。 のマンページgit-cleanとしてご覧ください。あなたがUNIXシステムを持っていない場合:http://linux.die.net/man/1/git-clean

+0

皆さん、ありがとうございました。彼らはすべて私に大変感謝しているgitについてもっと教えてくれました。 –

+1

問題はありません@ケネス・マクドナルド、答えの一つを受け入れることを忘れないでください。 –

4

最高の賭けは、新しいクローンを作ってください。あなたは絶対にgit checkout --orphan gh-pages

+0

馬の口から! – Kzqai

+0

私は馬ではありません!タヌキかクマ^^ – Tekkub

+0

挑戦可! – Kzqai

1

を試してみてくださいあなたが現在で作業しているレポでそれを行う必要がある場合はgitのページがWebファイル(例えば.htmlを)の代わりに、ソースファイルのためのものですので、それはです。だから、それらの指示があなたに伝えていることは、すべてのソースファイルなしで、Webサービス可能なgithubファイル、html、 CSS、JavaScript。

あなたがきれいにしたいなら、あなたはそうすることができます。あなたが完全に汚れていても大丈夫なら、おそらく単にブランチを作成して(gitブランチgh-pages)それを押してみてください。私はこれまでにやったことがあると思います。特に、リポジトリのWebサービス可能なものだけを扱うときはうまくいきました。

3

git cleanコマンドをドロップし、git add .の代わりにgit add <files>コマンドを実行すると、ルートディレクトリなしでgh-pagesブランチを作成できます。私は、彼らは方向に、彼らは簡単のためと「装飾性」を回避するためのやり方を表現だと思う

cd /path/to/fancypants 
git symbolic-ref HEAD refs/heads/gh-pages 
rm .git/index 
echo "My GitHub Page" > index.html 
git add index.html 
git commit -a -m "First pages commit" 
git push origin gh-pages 

:これは、ワークフローになります。

関連する問題