2016-06-29 13 views
1

現在、私はRailsを学んでおり、ブログアプリを構築中です。私はマイグレーションの周りに頭を包むことはできません。私はreadを使っていることから、移行を使用して列、テーブルをデータベースに追加できることを前提としています。しかし、どうして重要なのですか?それはバージョンコントロールによって達成できませんか?マイグレーションとバージョン管理

フィードバック/ガイダンスをいただきありがとうございます。私はかなりレール/ ActiveRecordに新しいので、私と一緒に負担してください。

+0

"バージョン管理"とは具体的にどういう意味ですか? gitリポジトリはPostgreSQLデータベースのスキーマを更新しません。 – Thilo

+1

こんにちは@Thilo、私は私が読書の解釈から単に混乱していたと思う。 マイグレーションは、dbを使って変更を直接処理します。バージョン管理はまったく別のもので、コードを処理するときにコミットを追跡することを指します。私は今ボールパークにいますか? –

+0

https://teamtreehouse.com/community/difference-between-migration-and-git – Thilo

答えて

1

Gitリポジトリがコードとして動作するため、データベースの移行が機能します。 これは、アプリケーションの開発中にデータベースに加えられた変更を追跡します。

移行しない場合は、コードを共有するすべてのデバイスですべての変更を手動で行う必要があります。

+1

おかげでアンドレ、私は愚かな質問と完全な誤解を推測する。 確認する: Migrations = "データベースのバージョン管理" Git = "コードのバージョン管理"? ありがとうございます。 –

+0

そうです。それは公正な質問であり、将来あなたを本当に助けるコンセプトです。 –

+0

「移行」は、ソースコードリポジトリに保存するファイルによって定義されます。しかし、データベースに適用されているとき(結果が自動的に表示される)、結果(追跡テーブルなど)もあります。これは、ここの約束の大きな部分です。 – Thilo

1

移行とバージョン管理は全く異なる2つのことです。移行は状態を維持しません。移行はデータベース/モデルを変更する方法であり、あなたが言ったように「列を追加する」よりもはるかに機能します。

誰もが開始時にrails guidesを確認する必要があります。

バージョン管理はデータベース構造を維持するだけではありません。データベースとビューとコントローラを変更して決定した後、データベースの変更を元に戻すだけと決めたとします。バージョンコントロールを元に戻すと、すべての変更が取り消されます。それは私が思う悪いです

関連する問題