質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

SVN

SVNは、CollabNet社が開発したソースコードなどを管理する集中型のバージョン管理システムです。 Subversionとも呼ばれ、CVSの問題点を解決すべく開発された次世代のバージョン管理システムとして開発されました。基本的なコマンドはCVSと共通しています。複数人の開発者が共同でひとつのソフトウェアの開発にあたるときなどに、ドキュメント及びソースコードなどを管理するのに使用されます。

Q&A

解決済

2回答

1152閲覧

プログラムソースの本番登録について

ax1el3

総合スコア6

GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

SVN

SVNは、CollabNet社が開発したソースコードなどを管理する集中型のバージョン管理システムです。 Subversionとも呼ばれ、CVSの問題点を解決すべく開発された次世代のバージョン管理システムとして開発されました。基本的なコマンドはCVSと共通しています。複数人の開発者が共同でひとつのソフトウェアの開発にあたるときなどに、ドキュメント及びソースコードなどを管理するのに使用されます。

0グッド

0クリップ

投稿2020/12/19 04:48

プログラムソースの本番登録の運用について質問です。最近勉強し始めて間もないので、説明不足な点があろうかと思いますが、ご了承ください。

私が所属している会社では、svnを使っています。プログラムソースを本番登録するまでの過程としては、開発が終わったソースをTortoiseSVNを使ってコミットをかけ、本番環境へは手作業(コピペ)で登録している状況です。

本来本番登録システム等を構築して、いつ時点での登録で設定された承認者によって確かに承認行為が行われたログを付けるべきだと思うのですが、svnには本番登録のような機能がないのでしょうか?

またみなさまの会社では、プログラムソースの本番登録はどのように運用されているのか、もし可能であればアドバイス頂ければ大変ありがたいです。

それとは別に、現在Githubを勉強しています。Githubには本番登録のような機能があるのかどうか気になっています。あるのであればそちらに切り替えることも手段の1つとして考えていきたいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hentaiman

2020/12/19 05:08

SVN云々はともかく、それ以外は調べて試してから懸念点を質問してはどうですか? 特に皆様の会社だどうだとかgithubだどうだは検索すれば著名な会社の運用フローなどが(実際にやっている手順かどうかは知らないが)出てきますが。
Zuishin

2020/12/19 05:34

勉強し始めの人ではなくチーフが考えることだと思います。知識の少ない時点で聞いても消化できず斜め上の方向に飛んでいく可能性があります。
ax1el3

2020/12/19 05:57

hentaiman様 ご回答ありがとうございます。 実際に自分で調べて体験して分からない点を質問した方がいいとのことで、確かにそうだと感じました。回答する側からすると、とても漠然とした質問内容だったと反省しております。 「著名な会社の運用フローが出てくる」とのことでしたが、差し支えなければ参考となるサイト等教えて頂ければ大変勉強になります。
ax1el3

2020/12/19 06:05

Zuishin様 ご回答ありがとうございます。 会社の中ではこれからどういった方針で進めていくかは、おっしゃる通りチーフあるいはそれ以上の者が検討しています。私としてはこちらのサイトで質問することで、知識を取り入れたいと考えていましたが、前提知識が何もないままで回答をもらった所で理解できず、結果、回答者様の時間をただ無駄にしてしまうだけでした。ご指摘ありがとうございました。
archiver

2020/12/19 06:13

あなたが仰る「本番登録」とは何ですか?(ニュアンス的に分からないでもないですが、あなたが所属する組織の独自文化での表現ですよね。そういった表現をされると齟齬が生じます) 全体的な文面から想像すると、別にSubversionやGitなどのバージョン管理システムには関係なく、運用上の話だけに思えます。
ax1el3

2020/12/19 06:28

archiver様 ご回答ありがとうございます。 独自文化の言い回しなことに今気づきました。ご指摘の通りそうなのだろうと思います。申し訳ありません。ただ、共通認識が取れる言い回しが上手く見つかりません。 バージョン管理システムとリリースは、関係ないものなのですね。それが分かっただけでもとても勉強になりました。私が知りたかったのは、リリース作業(自社では手作業)をどのようにされているのかなので、その辺りが全く整理できずにおかしな質問となっていたようです。。
hentaiman

2020/12/19 10:54

とりあえずさくらのナレッジでも見てみたら? 闇雲に検索するよりは情報拾いやすいと思うし試す為に必要な情報も試し方も載せてくれてるからちょうど良いと思いますよ
ax1el3

2020/12/20 06:57

hentaiman様 さくらのナレッジ調べてみました。多くの情報が載っているようなので、こちらでしばらくは勉強したいと思います。大変助かりました。ありがとうございます。
guest

回答2

0

ベストアンサー

いつ時点での登録で設定された承認者によって確かに承認行為が行われたログを付けるべきだと思うのですが、svnには本番登録のような機能がないのでしょうか?

Subversionは単にソースコード管理システムのひとつで、既にコメントでも一部指摘されているように、それ単体で本番環境へのデプロイなどを行えるものではありません。ですが、本番を「製品リリース」のひとつとして考えると、開発中のtrunkやbranchesでの作業内容をtagsへ登録し、必要に応じてリリース番号など共にタグ付けすることが質問者さんの言う「本番登録」に相当すると言えるかと思います。そのタグを指定してエクスポート(export)すれば、それすなわち本番で稼働中のソースコード群である、ということです。

プログラムソースを本番登録するまでの過程としては、開発が終わったソースをTortoiseSVNを使ってコミットをかけ、本番環境へは手作業(コピペ)で登録している状況です。

こちらについてですが、単にコミットをするだけでは不安が残ります。ソースコードの管理を個人に任せがちであると、コミットしたソースコードとビルドに必要なファイルが合っていないことが往々にしてあります。本番でも本番前のテストでも、コミットしたらいったんクリーンなディレクトリ下にファイルをリポジトリからエクスポートし、クリーンな状態でビルドします。(組織によって「クリーンビルド」などと言うこともあります)それでビルドが失敗したり起動に支障が出た場合、リポジトリのファイル構成や手順に足りないものがある、ということを示しています。クリーンビルド相当の作業は通常のリリース作業のひとつとして導入しておくことをお勧めします。複数のサーバーやデータベース、ミドルウェアが関わる場合はそう簡単にはいきませんが、インストーラーを含むスタンドアロンのプログラムをビルドするようなものでは、それだけでも充分機能することもあります。何につけ、「リポジトリに入っているファイルが実は古かった! 必要なファイルが入っていなかった!!」などということだけは絶対に避けなければなりません。

投稿2020/12/19 10:29

dodox86

総合スコア9183

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ax1el3

2020/12/20 07:12

dodox86様 ご回答ありがとうございます。 trunkやbranches、tagsについて調べていて、返信が遅くなりました。リリース予定のソースを含めたグループに番号付け(タグ付け)しておいて、エクスポートする際タグ情報を元に抜き出すことで、私の想定する本番登録(一般的にはデプロイやリリース?)の動きに相当するという理解をさせて頂きました。バージョン管理システムについての基礎知識がほとんどない状況ですので、ご教示いただいた内容を元に引き続き勉強していきたいと思います。 おっしゃる通り今の運用手順ではそういった危険性をはらんでいることは、職場でもなんとなく耳にしていました。現在プロジェクトの開発をほぼ1人で賄っている為、今の所そういった事態は起きていないようですが、今後システムが大規模になってきて、開発者が複数人になる可能性を考えると重要な課題であると捉えています。クリーンビルド相当の作業が必要であることを頭に入れておきます。
hentaiman

2020/12/20 10:36

> 職場でもなんとなく耳にしていました。 それなら職場の人達にどうしたらいいですか?って聞いた方が早くないですか。 仮に「Githubを使え」って言われたらGithubを使う事そのものは問題解決とは無関係である事を伝え、その上でどのようにgithubを使えば問題可決に至るのか教えを請えばいいでしょう。
ax1el3

2020/12/21 14:01 編集

hentaiman様 問題解決の早さ、あるいは方法論の話でいえばその方が断然早いでしょう。私としても出来ればすぐ聞きたいのですが、あまりに思考停止だな~と思ってしまい、まずは色んな知識を取り入れて、どうするべきか、自分の考えを持ちたいと考えました。知識を取り入れる1つの手段としてこちらのプラットフォームを選びましたが、活用(質問)するのにも前提知識が必要だったと感じています。ただ、複数の方から様々な反応を頂き、hentaiman様からは参考サイトの存在を教えて頂き、分からないことを自分で調べる手段を知れただけでも良かったと思います。 職場の中では方針はある程度決まっているようです。ただ、私の中で他の可能性がないものか、と考えていて今回質問させて頂いた次第です。Githubに精通している人が周りにいるかどうかも分かりませんし、このプラットフォームなら得意とされている人に出会えるかもしれませんし、もしいればそれこそ早い問題解決が出来ると期待していました。
hentaiman

2020/12/31 20:54

とても失礼な返答をされている自覚はした方が良いですよ。 それと、残念ながらこのQAをしている状態が既に思考停止ですが、その自覚の無い状態点も会社でやっていく上では問題でしょう。 質問者に対してベストな回答は「調査したら自分の手を動かして確認しましょう」です。 酷過ぎる返答に呆れてこちらも返答が遅れてしまっていました、失礼。
guest

0

質問を勝手に拡大解釈すると、CI/CD(継続的インテグレーション/継続的デプロイ)のことを知りたがっているように見えます。

Git 連携のシステムが多いと思いますが、SVN とも連携できるものがあったはずです。
少し切り口を変えて調べてみると良いかと。

投稿2020/12/21 14:11

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ax1el3

2020/12/23 12:37

te2ji様 ご回答ありがとうございます。質問内容を読み取って頂けて助かりました。 CI/CDについて自分なりに調べてみました。私が探していた内容に非常に近いと思いました。おかげさまで調べ方も分かり、参考になりそうなサイトにもたどり着けました。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問