2016-01-18 9 views
10

mix phoenix.gen.htmlは、一連のファイルを生成します。この世代を元に戻すにはどうすればいいですか?または私は手でそれをしなければならないのですか?mix phoenix.gen.htmlを元に戻すにはどうすればよいですか?

+1

コードはありません - https://github.com/phoenixframework/phoenix/blob/master/lib/mix/tasks/phoenix.gen.html.ex – Ash

+1

ちょっとしたアイデア。バージョンコントロールを使用した場合、コード生成によって加えられたすべての変更が表示されるはずです。私はそうしなかった - あなたはそれを使い始めなければならない。 – tkowal

+1

ありがとうございます。より自動的な方法を望んでいた。 'ember破壊 'のように – Emad

答えて

12

source codeまたはmix helpコマンドから '元に戻す'オプションがないと思います。削除するファイルを知っている。このことから

$ mix phoenix.gen.html Tweet tweets tweet:string 

* creating web/controllers/tweet_controller.ex 
* creating web/templates/tweet/edit.html.eex 
* creating web/templates/tweet/form.html.eex 
* creating web/templates/tweet/index.html.eex 
* creating web/templates/tweet/new.html.eex 
* creating web/templates/tweet/show.html.eex 
* creating web/views/tweet_view.ex 
* creating test/controllers/tweet_controller_test.exs 
* creating priv/repo/migrations/20160118194027_create_tweet.exs 
* creating web/models/tweet.ex 
* creating test/models/tweet_test.exs 

:このミックスコマンドphoenix.gen.htmlは、しかし、以下のように生成されたどのようなファイルを示しています。

1

私はそれはそれがなかったすべての変更を元に戻すことができるようにするコード生成ツールのために特に良いアイデアだとは思いません。これはあまりにも複雑でエラーが発生しやすく、バージョン管理システムがこの目的のために作られています(変更の追跡と管理)。

だから、そもそも、私は強く、たとえばgitのためのように、バージョン管理システムを使用することをお勧めします。 mix phx.gen.htmlなどを使用してコードを生成する前に、バージョン管理システムへの変更をすべてコミットしていることを確認してください。その後、リポジトリから作業ツリーの状態を復元することで、すべての変更を簡単にロールバックできます(そして、正しいものが生成されるまで何度もやり直してください)。新しいファイルが生成されても、バージョン管理システムを使用すると、作業ツリーにどのファイルが追加されたかを確認できるため、後で参照できるようにmix phx.gen.htmlの出力をコピーする必要はありません。バージョン管理システムでは、変更されたファイルを比較して変更を理解することもできます。

関連する問題