タグ付けされた質問 「version-control」

バージョン管理とは、ドキュメント、プログラム、およびコンピューターファイルとして保存されているその他の情報に対する変更の管理です。このタグを使用して、バージョン管理の使用法と適用性、VCS比較に関する一般的な質問にマークを付けます。それぞれの特定のVCSに固有のほとんどのコマンドと手法には、特定のタグがあり、推奨されます。

11
ソース管理からデータベースをどのように構築すべきですか?
データベースオブジェクトをバージョン管理する必要があるかどうかについて、SOコミュニティwikiでいくつかの議論がありました。ただし、データベースオブジェクトのビルド自動化プロセスを作成するためのベストプラクティスについてはあまり説明していません。 特に、開発者とDBAは、データベース展開への自動化アプローチのメリットとリスクを評価するときに、異なる目標、アプローチ、および懸念を抱くことが多いため、これは私のチームにとって議論の的となっています。 SOコミュニティから、現実の世界でどのような実践が効果的であったかについて、いくつかのアイデアを聞きたいと思います。 どのプラクティスが本当に最良であるかはやや主観的であると私は理解していますが、私は多くの人々にとってどのような仕事が役立つかについての良い対話を考えています。 ここでは、このトピックで懸念される領域に関するティーザーの質問をいくつか示します。これらは完全なリストではなく、人々が私が探しているものを理解するための出発点です。 テスト環境と本番環境の両方をソース管理から構築する必要がありますか? 両方とも自動化を使用して構築する必要がありますか、それとも、安定した最終的なテスト環境からオブジェクトをコピーすることによって本番環境で構築すべきですか? 展開スクリプトのテスト環境と本番環境の潜在的な違いにどのように対処しますか? 展開スクリプトがテストと同じように本番環境に対して効果的に機能することをどのようにテストしますか? どのタイプのオブジェクトをバージョン管理する必要がありますか? ちょうどコード(手順、パッケージ、トリガー、Javaなど)? インデックス? 制約? テーブル定義? テーブル変更スクリプト?(例:ALTERスクリプト) 全部? バージョン管理すべきではないオブジェクトのタイプはどれですか? シーケンス? 助成金? ユーザーアカウント? SCMリポジトリでデータベースオブジェクトをどのように編成する必要がありますか? 変換スクリプトやALTERスクリプトなど、一度きりのものにどのように対処しますか? データベースからオブジェクトを廃棄する方法を教えてください。 オブジェクトを開発からテストレベルに昇格させるのはだれですか。 複数の開発者による変更をどのように調整しますか? 複数のシステムで使用されるデータベースオブジェクトの分岐をどのように処理しますか? このプロセスに妥当な例外があれば、どのような例外がありますか? セキュリティ上の問題? 匿名化の懸念があるデータ? 完全に自動化できないスクリプト? どのようにしてプロセスに回復力と強制力を持たせることができますか? 開発者のエラーに? 予期せぬ環境問題へ? 災害復旧のために? DB-SCMのメリットがコストを正当化するものであると意思決定者にどのように説得しますか? 事例証拠? 業界調査? 業界のベストプラクティスの推奨事項? 認められた当局に訴えますか? 費用便益分析? このモデルで誰がデータベースオブジェクトを「所有」する必要がありますか? 開発者? DBA? データアナリスト? 複数の?

4
「master」以外のデフォルトのブランチ名でGitリポジトリを作成するにはどうすればよいですか?
ではプロGitの本、それは言います 「起源」は特別ではありません ブランチ名「master」がGitで特別な意味を持たないように、「origin」も同様です。「master」はgitinitを実行するときの開始ブランチのデフォルト名であり、これが広く使用されている唯一の理由ですが、「origin」はgitcloneを実行するときのリモートのデフォルト名です。代わりにgitclone -o booyahを実行すると、デフォルトのリモートブランチとしてbooyah / masterが使用されます。 つまり、デフォルトのブランチ名をmainまたはmain-branchなどとして使用できます。別のデフォルトのブランチ名でman git-init初期化するオプションが見つかりませんでしたrepo。 GitHubは、設定ページでデフォルトのブランチ名を設定する方法を示しています。しかし、私は特定のGitホスティングサイトでそれを設定する方法について話していません。特定のGitホスティングサイトに関してではなく、Gitに関してのみ厳密に質問しています。 それを行う方法はありますか?

12
コミットメッセージは現在時制または過去時制で書かれるべきですか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 3年前休業。 この質問を改善する それで、あなたがより直感的に優れていると思うのはどれですか? Fixed the XXX bug in YYY Fix the XXX bug in YYY Fixes the XXX bug in YYY Fixing the XXX bug in YYY 根拠を提供してください。一般的な観点から質問していることに注意してください。つまり、これを好みのsvn / cvsツールやプログラミング言語に関連付けようとするのではなく、あらゆるツールやプログラミング言語に適用すべき/適用できるものと考えてください。

3
プルリクエストから変更されたファイルを削除する
現在、プルリクエストに3つの変更されたファイル(新しいファイルはありません)があります。 プルリクエストからこれらのファイルの1つを削除して、プルリクエストに2つのファイルへの変更のみが含まれ、3番目のファイルが元の変更されていない状態のままになるようにします。 私はいくつかのことを試しました(ファイルの元のバージョンをチェックアウトするなど)が、それでもPRで変更されたファイルとして表示されます。 これに対する解決策はありますか?


10
Perforceでファイルを「無視」できますか?
PerforceのP4V IDEにある「Reconcile Offline Work ...」機能を使用して、P4デポから切断されている間に作業していたファイルを同期します。「フォルダ差分」を実行する別のウィンドウを起動します。 ソース管理にチェックインしたくないファイルがあります(DLL、コード生成出力などのbinフォルダーで見つかったファイルなど)。これらのファイル/フォルダーを「新規」として表示されないようにフィルター処理する方法はありますか。追加されました。彼らは私が実際に興味を持っているファイルのリストを散らかす傾向があります。P4はSubversionの「ファイルを無視する」機能と同等のものを持っていますか?

4
git:ヘッドを切り離さずにブランチを切り替える
メインブランチ(マスター)と実験的な作業のためのブランチを備えたgithubにリポジトリがあります。私はいくつかのコミットを行い、実験ブランチにプッシュし、すべてが順調でした。 今、別のマシンで、リポジトリ(git clone repository)のクローンを作成し、実験的なブランチ(git checkout branchname)に切り替えようとしますが、これを行うたびに、頭が切り離され、変更をプッシュできません。何が悪いのですか?gitの基本的な概念がどこかに欠けているような気がしますが、ランダムなgitのmanページを読んでも手がかりがありません。 私はgitを初めて使用するので、ばかになった場合は申し訳ありませんが、ドキュメントに頭を付け直すのに役立つ情報が見つかりません。 編集 追跡ブランチの概念は、私が欠けていたものです。私はその概念を理解したので、すべてが明確です。個人的には、git branch --track構文の方がよりも直感的であることがわかりgit checkout -b branch-name origin/branch-nameます。 助けてくれてありがとう!

4
特定のブランチへのgit push
この質問を読んだ後でも:git-push-current-branch、それでもgit pushコマンドをどのように書くべきかを理解するのに苦労しています。質問リンクで述べたように、ドキュメントからは明確ではありません。 私の「実世界」の例を使用したいと思います。git statusブランチのトップレベルでコマンドを実行すると、次のようになります。 ブランチamd_qlp_tester ブランチは、5つのコミットで「origin / amd_qlp_tester」よりも進んでいます。 等... したがって、私のブランチ名はamd_qlp_testerメインブランチから「分岐」されています(用語が間違っている場合は、SVNの背景が原因です)。ただし、「origin / amd_qlp_testser」という名前もあります。 それでは、どのようにプッシュコマンドをフレーズするのですか? 次のいずれかです。 git push origin/amd_qlp_tester git push origin amd_qlp_tester git push amd_qlp_tester git push origin git push

2
google-services.json(Firebaseから)をリポジトリに追加する必要がありますか?
Firebaseに登録して、新しいプロジェクトを作成しました。Firebaseから、アプリドメインとSHA1デバッグキーの入力を求められました。これらの詳細を入力すると、アプリモジュールのルートに追加するためのgoogle-services.jsonファイルが生成されました。 私の質問は、この.jsonファイルをパブリック(オープンソース)リポジトリに追加する必要があるかどうかです。APIキーのように、秘密にする必要があるものですか?

12
継続的インテグレーションを行う場合の最良の分岐戦略は?
継続的インテグレーションを行う場合に使用する最適な分岐戦略は何ですか? リリースブランチ:トランクで開発し、リリースごとにブランチを保持します。 機能の分岐:各機能を別々の分岐で開発し、安定した場合にのみマージします。 これらの戦略の両方を一緒に使用することは理にかなっていますか?同様に、リリースごとに分岐しますが、大規模な機能にも分岐しますか?これらの戦略の1つは、継続的インテグレーションとうまくかみ合いますか 不安定なトランクを使用している場合、継続的インテグレーションを使用しても意味がありますか?

2
Mercurialで移植片を使用した結果
最近、Mercurialでリリースブランチを維持するときに変更をスキップすることについていくつかの質問がありました。例えば: Mercurial:ダミーのマージ後、ブランチ固有の変更が引き続き返される あるブランチのMercurialバックアウトが他のブランチに影響を与えるのはなぜですか? これは2.0で導入されて以来、graftこの問題を回避するためにを使用することについて疑問に思っていました。次のようなリビジョンツリーがあるとします。 A---B---C---D---E---F---G---H---I---J 悪の変更をスキップするリリースブランチを作成する必要があるとしますE。 hg update -r D hg graft "F::J" 私たちに与える: A---B---C---D---E---F---G---H---I---J \ --F'--G'--H'--I'--J' Q1:ここで何が起こったのですか?私はそれが理解できるtransplantの外にパッチを生成しているだろうF::Jし、その後にそれらを適用しDますが、graftむしろパッチよりも3ウェイマージを使用すると言われています。それで……それはどのように機能しますか?なぜそれが良いのですか? 今修正しE、それをリリースブランチにマージするとします。 --E2----------------- / \ A---B---C---D---E---F---G---H---I---J---M1 \ \ --F'--G'--H'--I'--J'---------M2-- M1は単純なマージです。特別なことは何もありません。M2は、「同じ」(または少なくとも同等の)変更がオンになっているブランチをマージしています。 Q2:このマージは、通常の3ウェイマージ使用しているD、J'とM1? Q3:mercurialは、マージ操作に役立つ移植操作に関する追加情報を保存/使用していますか? そして最後に... Q4:このようなフローの潜在的な問題は何ですか?

9
ExcelファイルとSQLスキーマファイルのドキュメントバージョン管理を改善する方法
私はいくつかのExcelファイルとSQLスキーマファイルを担当しています。これらのファイルでドキュメントのバージョン管理を改善するにはどうすればよいですか? これらのファイルで変更された部分(異なる部分)を確認し、すべてのバージョンを参照用に保持する必要があります。現在、ファイル名にタイムスタンプを追加していますが、効率が悪いようです。 ドキュメントのバージョン管理を改善する方法または良い方法はありますか? ちなみに、編集者はメールでファイルを送ってくれます。

5
gitignoreを使用してファイルを無視する(ただし削除しない)
私のgitリポジトリにtmpディレクトリがありますが、まだ存在しますが無視されます。私はそれをに追加しましたが.gitignore、git statusそのディレクトリ内のファイルへの変更についてはまだ教えてくれます。私は試しましたgit rm -r --cachedが、それはそれをリモートリポジトリから削除します。このディレクトリへの変更の追跡を停止しながら、存在を許可するにはどうすればよいですか?私も1つのファイルに対してこれを行う必要がありますが、それを変更したgit status後も、.gitignoreそれらを変更すると表示されます。私は何をすべきか?

19
ソース管理で構成ファイルをどのように扱いますか?
典型的なWebアプリがあり、ファイルの構成が何であるとしましょう。プロジェクトに取り組んでいるすべての開発者には、開発ボックスのバージョンが1つあります。開発バージョン、製品バージョン、ステージバージョンがあります。ソース管理でこれにどのように対処しますか?このファイルをまったくチェックインせず、別の名前でチェックインするか、まったく気の利いた何かをしますか?
96 svn  git  version-control  cvs 

6
gitは大文字と小文字を区別しませんか?
パーシャルコールの最初のコミットメントでは、_Electronics大文字で始めて書かれていましたが、次にに変更しました_electronics。 新しい名前をコミットした後、cygwinの下のGitはケースを無視したので、ターゲットリポジトリで手動で名前を変更しました。 コミットされた_electronicsパーシャルがに変更される場合があります_Electronics。 何が悪いのでしょうか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.