バージョン管理システムには何が良いのでしょうか?
環境はwin10でのvs2017です
GitHubは有名なので存在は知ってはいますが調べてもよく分かりませんでした
GitHubでもそれ以外でも構わないのでバージョン管理システムの解説をできる限り細かくお願いします
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/02/23 02:30
回答8件
0
バージョン管理システムで有名な物から古い順に上げていきます。
- CVS - 1990年
昔からある集中型バージョン管理システム。広く使われていたが、問題も多かった。 - Subversion (SVN) - 2000年
CVSの問題点を改善した集中型バージョン管理システム。コマンドがCVSと同じな物が多く、ポストCVSとして多くのプロジェクトがCVSから移行した。 - Mercurial - 2005年
主にPythonで作られた分散型バージョン管理システム。後述のGitに比べるとそれほど普及していない。 - Git - 2005年
CVSをアンチテーゼとして作られた分散型バージョン管理システム。現在においてはデファクトスタンダードとなりつつある。
バージョン管理システムが使用できる開発者向けのホスティングサービスで有名な物を上げていきます。
- SourceForge - CVS, Subversion, Git
老舗。昔から有るソフトウェアの多数が利用している。しかし、配布ソフトウェアのマルウェア問題や管理権限の乗っ取り等の管理上多くの問題が発生したため、プロジェクトの他所への引っ越しも目立つ。落ち目。 - OSDN - CVS, Subversion, Mercurial, Git
日本の会社が提供するサービス。ドキュメントやサポートが日本語でも用意してある。元々は日本語版SourceForgeとして作れていたが、色々あって名前を変えた。 - Google Code - Subversion, Mercurial, Git
かつてGoogleが提供していたサービスだったが、現在は終了している。アーカイブのみが残っている。 - GitHub - Git
Gitのホスティングサービスとしてはデファクトスタンダード。Google Codeが終了した原因の一つにもなった。マイクロソフトが買収したとこでも有名。日本語のサポートが全くなかったが、日本支社が作られたので、今後充実していくような気がする。多くのOSSがGitHubで移行しており、また、新しいOSSの多くがGitHubを利用している。 - Bitbucket - Mercurial, Git
GitHubのライバル。GitHubと競い合っていた最初の頃はは無料でプライベートレポジトリがたくさん作れると言うことで公開したくない人達がたくさん押し寄せた(現在はGitHubでも無料で作成可能)。 - Gitlab - Git
「Gitlab」というGitレポジトリマネジャーアプリケーションを開発しているGitlab社がGitlabを使って提供しているホスティングサービス。どちらか言うとアプリのGitlabの方が有名。Gitlabが提供できるサービスはGitHubと遜色ない内容となっており、言わばオンプレ版GitHubを作ることが出来る。 - 独自サーバー with Gitlab - Git
アプリのGitlabを使えば、自分が所有するサーバーでGitHubみたいなことができる。ディスクを買って追加すれば容量は無限、プライベートレポジトリも作り放題、アクセス制限も設定し放題。 - ファイル共有サーバー - Git
GitはSMBやNFS等のファイル共有している領域にベアレポジトリを作って、複数人で利用することも可能。少人数であれば、ぶっちゃけこれで十分というのもある。
なお、私が仕事で行っている俺一人だけプロジェクトは最後のファイル共有サーバーにしています。Gitlabサーバーも一回建ててみたのですが、Gitlabサーバーを運用・管理するのが面倒になったので。
投稿2019/02/22 23:28
総合スコア21735
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/02/23 00:50
2019/02/23 01:00
2019/02/23 01:26
2019/02/23 01:36
2019/02/23 01:52
2019/02/23 01:57 編集
0
2019 年現在、バージョン管理システムは、ほぼ Git 一択の状態です。
参考:
2018年 バージョン管理システムトップ7 - Stack Overflow
また、GitHub は厳密にいうとバージョン管理システムはでなく、Git のホスティングサービスです。
Git のホスティングサービスとしては、GitHub の他にも GitLab や Bitbucket などがありますが、
はじめて Git を使うのであれば、GitHub を利用するのが無難だと思います。
投稿2019/02/22 14:55
総合スコア6500
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/02/22 22:56
2019/02/23 00:15
2019/02/23 03:20
0
こんにちは。
生産性を上げるという意味では、他の方もおっしゃっているように git 一択と私も思います。
ただ、svn というバージョン管理システムもそれなりに使われています。学習が比較的容易なことが最大の理由でしょう。
バージョン管理という概念は、svnくらい単純化したもの(単純なライン構造+変更不可)なら比較的容易に学べますが、gitのようにツリー構造、かつ、変更可能なバージョン管理は意外に理解し辛いです。使い方の解説は多いのですが、考え方の解説がほとんど見当たらないことも痛いです。
ですが、ブランチ(枝)を容易に生やせて、剪定したり継ぎ接ぎ(というか整理)したりできるのでプログラム開発の枠組みが大きく広がります。プログラム開発が主なグループに属していて、かつ、難しいことへ挑戦する根性があるなら git を強くお勧めします。(プログラム開発が主というわけでない場合は、悩ましいです。svnで妥協するのも有りと思います。)
投稿2019/02/23 04:58
総合スコア23272
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
バージョン管理だけなら、現在新たにという観点で考えるなら git で決まりと言っていいでしょう。
Visual Studio/Visual Studio Code など、開発環境からも git リポジトリの操作が統合されるので、意識しなくても使えますし。(svn や cvs も使えますが)
仕事上で言えば、自社の開発プロジェクトの場合はチケット管理の redmine と連携させるかたちで git リポジトリを(自前のサーバーに)置いています。GitHub などのホスティングは使ってません。
※チケット管理と連携させる場合、チケット管理のサーバー上にリポジトリがないと困ることが多いので、origin/master を置いています
投稿2019/02/23 00:30
総合スコア13703
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
参考情報
- 【新人向け】これだけは知っておいて欲しい基礎知識 バージョン管理編
https://qiita.com/tomPlain/items/540e73e5fb6cb2dcb1f6
- 2018-05a-Git/GitHub講義
https://speakerdeck.com/cybozuinsideout/2018-05a-git-and-github-lecture
- git入門
投稿2019/02/22 22:40
総合スコア22324
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
Git も Visual Studio も Microsoft 社製なので、Visual Studio 2017 と最も親和性の良いものは Git です。
プロジェクトを新規作成する際にプロジェクト名をつけるところで「新しい Git リポジトリの作成(G)」というチェックボックスがあるので探してみてください。
プロジェクトを作ったら、何かファイルを書き換えてソリューションエクスプローラーを見ると、書き換えたファイルのところに赤いチェックマークがついていると思います。
これは「書き換えられたけれどステージもコミットもされていないファイル」という意味です。
それを確認したら、ソリューションを右クリックして「コミット」を選択してください。チェックマークが消えると思います。
あるいは、もう一度書き換えて保存し、ソリューションエクスプローラーで右クリックして「元に戻す」を選択してください。書き換える前に戻ると思います。
また書き換えて「未変更のものと比較」で、どこをどのように書き換えたのかがわかります。
他にブランチを作ったり GitHub にプッシュしたりもチームエクスプローラーから行うことができ、他のツールの必要がありません。
詳細については書ききれないので、わからない用語などは自分で検索してください。
バージョン管理システムは複数人から成るチームで使うときに最も威力を発揮しますが、一人で使う時でも十分便利です。一度コミットすれば、いくらソースを書き換えてもその時点に戻れることと、ブランチを上手に使えば、新機能の開発を継続しながらでも、旧バージョンと新バージョンの両方にバグフィクスのパッチを当てることができるところが特に便利だと思います。
投稿2019/02/23 10:11
編集2019/02/23 10:13総合スコア28660
0
「git」でぐぐって、でてくるものを一通り読みましょう
投稿2019/02/22 14:45
編集2019/02/22 14:46総合スコア87774
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。