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

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

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

Cloud9は、クラウドからのプログラミングが可能になるWebサービス。IDEとしての機能が搭載されており、GitHubやHerokuなど他ツールとの連携も可能です。ブラウザ上で動くため、デバイスに関係なく開発環境を準備できます。

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

GitHub

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

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

6回答

4760閲覧

友人と二人で共同開発 git必要なのか??

asato2000

総合スコア22

Cloud9

Cloud9は、クラウドからのプログラミングが可能になるWebサービス。IDEとしての機能が搭載されており、GitHubやHerokuなど他ツールとの連携も可能です。ブラウザ上で動くため、デバイスに関係なく開発環境を準備できます。

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

GitHub

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

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

3クリップ

投稿2020/10/20 15:28

前提・実現したいこと

友達と2人で共同開発がしたくていろんなサイトを見てみるとgithubを使って、レポジトリを作って、、、、のようなこと
が書かれているのですがそんなめんどくさいことしないで、cloud9で開発画面の共有をする方が楽に開発できるのではないかと考えるのですが、何か悪い影響があるのでしょうか?
私たちは、よく会う友人でコミュニケーションをいつでも取ることができるので、githubを使わなくても弊害がないように感じます。

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

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

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

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

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

m.ts10806

2020/10/20 23:26

やってみて問題でてから質問されては。
guest

回答6

0

ベストアンサー

Gitの解説をしますが、これらの事を聞いて
「やっぱり俺達には不要だな」という感想になるなら不要です。

バリバリとプログラムのコードを書いて動かすプログラマを目指していて
何のプログラムも作る能力もありません!
Gitというツールの扱いだけスペシャリストです!
これではプログラマとしての魅力は低いままですからね。

今からプログラムを学習し作り上げていく初学者ならば
AWS Cloud9の優先順位を高く見積もるのは良い選択なんじゃないですか?
それも良いと思います。

もし後から「この問題を解決するためにGitを調べて使ってみよう!」となるなら、
それはその時に覚え始めるのが良いでしょう。
目的がしっかりしていると、学習の効率が良くなりますからね。


Gitの本質はバージョン管理ツールです。
ゲームのセーブデータみたいなものです。
セーブに対して目立つよう栞を挟んだり、一言コメントも付与して一覧表示出来ます。

Gitはソースコードのマージ機能が優れているのも良いですね。

スパロボというゲームでは複数の戦いが同時に発生し、チームを複数に分けて対処します。
別働隊は数話後に成長して合流します。

プロジェクト開発というのも要望という形で複数の戦いが同時に発生します。
その時、ソースコードや開発者を割り振って対処したいのですが、
作業者Aの改良を取り込んだら作業者Bのコードが動作しなくなったというケースが頻発していました。

Gitはそれを良い感じに解消してくれます。
Gitは機能が複雑すぎるので理解するのに時間がかかるのが欠点ですが、
一度覚えれば使わない理由がないよねという程に優秀です。


GitHubはGitのセーブデータをWebサービスとして預かるという主目的もありつつ、
Issueという要望・不具合報告掲示板であーだーこーだ議論して議事録代わりにしておいたり、
要望を満たす為のコミットを纏めて、プルリクエストという機能を使いコードのBefore、Afterを評価できるSNSサービスです。

ソースコードには議論の「結果」は残りますが議論の「過程」は残りません。
コメントアウトでソースコードに逐一載せると読みづらくて仕方ないですからね。

開発では後日「どうしてこうなった?」とか「この目的ならこうしたほうが良くね?」といったケースが頻発します。
その時に議論の過程が残っていれば目的を見失う事がありません。


なので、本質から考えていくと、
AWS Cloud9とGitやGitHubは目的が違うので、
必要か不要かという感じではなく併用するのがお得ですね。

GitやGitHubが提供してくれる世界は
ソースコードをゲームのセーブデータのように管理し、
昨日は動いてたのに、今日の修正で動かなくなったんだが……という事を未然に防いでくれます。

ですがGitはとても多くの機能を内包している複雑なツールです。
いきなりGitの全てを使いこなそうとすると大変なので、
もし興味が出ても、まずは小さい機能(下記の3個)に絞って学習すると良いでしょう。

  • セーブデータに該当するコミット履歴の登録
  • 別働隊を作って管理するブランチ
  • 合流を司るマージ

これだけでもGitの良さは沢山引き出せます。
Sourcetreeのような直感的に使えるツールもありますし、
検索すれば有志の方の使い方説明記事が大量に出てきますからね。

投稿2020/10/21 04:28

編集2020/10/21 05:50
miyabi-sun

総合スコア21203

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

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

asato2000

2020/10/21 05:27

とても分かりやすい説明ありがとうございます!
guest

0

少しでも複雑になってくると、
自分一人の開発であってもバージョン管理やブランチでの管理が出来る/出来ないで開発効率が何倍も変わってきます。

が、このメリットは実際にやってみないと実感できないところでもあるので、まずはご自身が納得の行く形で始めてみて、必要だと思ったらGitHubなり他のサービスなりの使用を検討するという形でも遅くないと思いますよ。

Cloud9のfilehistoryだけでも困らないケースもそれなりにあるでしょうし、Git/GitHubに関する学習コストをスキップ出来るのは小さくないメリットだと思います。

投稿2020/10/20 16:01

tanat

総合スコア18727

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

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

退会済みユーザー

退会済みユーザー

2020/10/20 23:37

> Git/GitHubに関する学習コストをスキップ出来るのは小さくないメリットだと思います。 後から必要に応じて学習しようとすると、つまみ食いしちゃって体系的な学習をしないっていう地獄がw
tanat

2020/10/21 00:52

そこはまあ難しいところですねw
guest

0

git必要なのか?

と、GitHub の利用が必要か?は別物ですが、どちらのことなんですかね?

git の必要性

バージョン管理システムなので、「何人で開発するか」と本質的にリンクしません。
判断基準としては
・変更履歴を必要とするかどうか?
が重要となります。(一般的な開発では重要です)

また、branch で開発目的ごとに並行開発ができるのも、利便性にかなり影響を与えます。

GitHub の必要性

git をベースに開発管理システムとして有用です。
開発管理システムなので、「何人で開発するか」と本質的にリンクしません。

たとえば、issue や TODO をコードと結び付けて管理できるとか、CD/CI を行えるとか最近の開発で必要なものが一か所で管理できます。

それぞれの公式をよく読みこむのがメリット理解への近道です。

投稿2020/10/20 23:51

編集2020/10/21 03:48
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

0

コミュニケーションをいつでも取れるといっても、プログラムの一行ワンワード、いちいち細部まで「コミュニケーション」して確認します? 開発が本格化してきたら、相当面倒ではないかと思いますが。

私は友人と二人どころかたった一人でプログラム開発していますが、githubを活用していますよ。ややこしいことを考えずに最新バージョンの確認ができるのは一人でも二人でも便利だと思います。特に、開発用本番用と複数のマシンを使い分けるような状況では、もう私としてはgithubを使わない状況は考えられなくなってきています。

もっとも、そうなったのは最近のことで、それまではあまり必要を感じてなかったのも確かです。あるきっかけから手を出して、なんで皆gitgitいってるのかようやく実感できたので、まあ、騙されたと思って試してみてはいかがでしょうか。

投稿2020/10/20 15:44

KojiDoi

総合スコア13692

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

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

0

「楽に開発できる事」を目指していて、それでgitの利用が障害になるという判断をあなたが下しているなら、別に無理に使う必要はありません。

バージョン管理やgithub等のオンラインリポジトリの活用にメリットを感じられらいのであれば、あなたとその友人が話し合って一番良いと思う方法をとれば良いと思います。

投稿2020/10/20 15:48

gentaro

総合スコア8947

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

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

0

えーと、、万が一というかソースコードふっとんだりとかの場合にリスク管理もできたり、
あるバージョンに戻したりとか、特定の機能だけ最新のものに追加したりとか、
リポジトリとの差分が見れたり。git管理するメリットは無限にあると思います。
ソースコードの量が少ないうちは使わなくてもいいかもしれませんが、増えてきたら使ってみるとか。

投稿2020/10/20 15:43

firegrape

総合スコア902

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

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

miyabi_takatsuk

2020/10/21 01:09

途中でバージョン管理を導入するのは、ソースコードのバッティング(他者のものとの整合性がとれないとの意味)など、 バージョン管理をしたことない人にとっては逆にハードルが高くなりますし、メリットが非常に少なくなります。 (その時点でのソースより前のバージョンに当然戻れない、など)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問