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

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

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

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

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

3回答

1579閲覧

編集したソースの動作確認作業をLinux上で楽に行いたい

退会済みユーザー

退会済みユーザー

総合スコア0

Git

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

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

1クリップ

投稿2018/03/30 06:00

編集2018/03/30 06:54

初めてWeb系の開発を行なっているのですが、開発環境で不便に感じていることがあるのでちょっと質問させてください。

私の環境としては自端末はMacで開発用のリモートサーバーを持ってます。
ソース管理はGitで行なってます。

今やっているデバッグの仕方は、
1 MacにGitからソースを落としtopicブランチを切る
2 修正が終わったらtopicブランチをリモートにプッシュ
3 topicブランチを開発用サーバにチェックアウト
4 修正内容を反映させるためにapacheのDocumentRoot配下に手作業で配布し、動作確認開始
といった感じです。

小さい修正なら直接コンテンツをいじっちゃうのですが、大きい修正になるとGitで作業しないと何に手を入れたのかわかりにくくなってしまうので、このような方式で作業してます。
また、開発チームでIDEを取り入れてないので、NetBeansとかでデバッグ実行するにはちょっと面倒臭いところがあります。(リポジトリがよくわからない単位で区切られていて統合するのに手間がかかりすぎる)

なので私がやりたいことは、上記の3までを行なったら、もう修正が開発用サーバに反映されているようにし、4の作業を省きたいです。
LinuxもPHPも初心者なので、そういった作業がパワー作業になってしまっていてちょっと苦痛です。
チームのメンバーにちらっと聞いた話だと、サーバに落としてきたソースとDocumentRoot配下に実際にあるソースをリンクさせることができるとかなんとかって聞いたような気がしますが、そんなことができるんでしょうか?

それか何かいい方法がありましたら教えて下さい。


追記:
ご指摘がありましたので、Linuxのディレクトリ構造を簡単に例示したいと思います。

tree

1/home/apache/share/index.html 2 | | - /main/aaa.php 3 | | bbb.php 4 | | - /sub/sub1/ccc.php 5 | ddd.php 6 | 7 | - /terateil/git/git-rep/index.html 8 | - /main/aaa.php 9 | bbb.php 10 | - /sub1/ccc.php 11 ddd.php 12

まぁ簡単に書くと上記のような構造の違いが存在します。
/home/shareがDocumentRootで、/home/terateil/git/git-rep/ がgitからチェックアウトしたリポジトリのディレクトリです。

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

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

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

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

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

guest

回答3

0

Capistrano などのデプロイツールが使えるでしょうか。

投稿2018/03/30 06:14

kazto

総合スコア7196

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

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

退会済みユーザー

退会済みユーザー

2018/03/30 06:30

そういったツールの関して特に制限はありません。
guest

0

あーこれは自分が直したいやつ…。
こんな環境で開発するように言われても絶対に耐えられないので何を言われようと改善する。

まずサーバー上で手作業でなにかするのは避ける。
git-repoにpullしてるのが間違いでDocumentRootで直接pull。
構成が違うならpull後にmvでもすればいい。

中心のgitリポジトリはGitHubでもGitLabでもなんでも。
そこへのgit push→CIでサーバーへデプロイという流れ。
今一番快適なのはこれなのでここを目指すのがいい。
やり方はいくらでも情報あるので調べてください。

投稿2018/03/30 08:06

kawax

総合スコア10377

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

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

退会済みユーザー

退会済みユーザー

2018/03/30 09:21

ありがとうございます。自分はこの開発チームに入ったばかりなのですが、web系の開発が初めてでこんなもんなのかと思ってましたが、やはり違うようですね。出直します。
guest

0

ベストアンサー

LinuxにGit入れてチェックアウトしたらいいんじゃないでしょうか。
(Linux側に制限等あったらごめんなさい)

あと、すごく詳しいというわけではないのですが、
JenkinsのGitプラグインとか。

投稿2018/03/30 06:07

編集2018/03/30 06:09
m.ts10806

総合スコア80765

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

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

退会済みユーザー

退会済みユーザー

2018/03/30 06:28

伝わりにくくてすみません。 3 topicブランチを開発用サーバにチェックアウト ではGitを使ってチェックアウトしてます。ただ、ディレクトリの構成が実際のDocumentRoot配下とは違うのでそのままというわけには行かないんです。。。 JenkinsのGitプラグインちょっと見てみます
m.ts10806

2018/03/30 06:33

ディレクトリ構成部分など、開示可能な範囲で質問に追記された方がより欲しい回答が得られるかと思います。 それか、配置しやすいようなディレクトリ構成にしておくか。 手作業や手順が増えればその分、バグが増えるわけですし。
退会済みユーザー

退会済みユーザー

2018/03/30 06:56

説明不足で申し訳ありませんでした。 > それか、配置しやすいようなディレクトリ構成にしておくか。 まさにおっしゃる通りなんですが、ぐちゃぐちゃすぎてまだそこを整理できてないんですよね。。。 でも自動でデプロイしたりするにはこれの整理をやる必要があるんだなと改めて思いました。。。
m.ts10806

2018/03/30 07:20

>自動でデプロイしたりするにはこれの整理をやる必要があるんだな その通りです。手動でやらざるを得ないのは構成がバラバラだからその分を手でやらなきゃいけないというところです。 ここを整理しないとツールを導入しても差分を結局手でやることになって意味がなくなります。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問