Gitをインストール してpush

Gitをインストールする

centos7の場合ここ

  • コミットしたいディレクトリに移動してinitする

     		  
       Initialized empty Git repository in /path/to/already/.git/  
    
  • 新規ディレクトリなら,まずはセットアップ

  • 除外ディレクトリ → gitへpushuしない
    .gitignore の書き方。ファイル/ディレクトリの除外

  • github上で新規レポジトリを作成( リポジトリの名前は ディレクトリの名前にする)


    リモートリポジトリの追加

  • ローカルにリモートリポジトリの情報を追加
  • ステージする
  • コミットする
  • リポジトリが有るならこれでPush

    -f で強制

  • Git 新規ディレクトリにリモートから pullしたい

  • 新規ディレクトリなら,まずはセットアップ


    親ディレクトリまで移動

    ダウンロードしたい リポジトリ指定

    git pullリモートレポジトリとローカルレポジトリを同じ状態にする

  • 鍵認証(pushでパスワードを聞かれないよう)にする

    • ローカルの開発サーバーで鍵をつくる(名前は指定したほうがいい)
    • config ファイルの作成

                Host github github.com
                HostName github.com
                IdentityFile ~/.ssh/github_rsa
                User git 
              
    • 600にする

    • .gitconfig をつくって 600にする

        vi ~/.gitconfig 
         [user]
              name = アカウント
              email = メアド
      
         [url "github:"]
            InsteadOf = https://github.com/
            InsteadOf = git@github.com:
           
    • githubに移動し、マイページのpersonal settingsのSSH and GPG keysに入ります。
      New SSH keyをクリックし、さきほどコピーした公開鍵をペーストします。

    追跡済みのファイルを除外する方法

     # ファイルは消さずに、追跡だけ除外
     $ git rm --cached FILE_NAME
    

    Gitの一部のディレクトリだけ取得する方法

    次に marge request (githubで)

    他の人の開発分を取り込む
    git pull origin master

    直前コミットの取り消し。
    git reset HEAD

    CentOS7でプロンプトにブランチ名を表示したい

    linux command よく使うやつ (centos)

    書き換えてからコピーできる

    特定の文字列含むファイルを検索するコマンド

    特定の文字列含むファイルを拡張子指定で検索するコマンド

    ディレクトリ(strage)を除外して特定の文字列(admin)含むファイルを拡張子指定で検索するコマンド

    現在実行されているプロセスを知る

    サブディレクトリ以下の特定ファイルを一括して削除する

    
    ファイル名で指定ディレクトリ以下を検索
    
    

    日付で検索する (10日以内に編集)

    ディレクトリを除外して日付で検索する (3日以内に編集)

    更新日順に表示する

    更新日順にディレクトリを除外して表示する

    • find -type f はファイルのみを対象とする
    • find -print0 は検出されたファイルのフルパスをNULLキャラクターで分割して出力する
    • xargs -0 もしくは xargs --null 入力ストリームの分割はNULLキャラクターを用いる
     
    特定の日に更新したファイルを見つける
     find . -type f -name "*.php" -newermt "2020-09-25"
    

    管理者:グループの変更

    一括変更

    パーミッション変更

    ファイル移動 、名前変更

    コピー A to B

    viエディタに行番号

    
    

    全てのphpが755に、htmlは644になる

    ローカルのファイルをリモートにアップロード
    # -a オプションでアスキー転送 (デフォルトはバイナリ転送)

    FTPserver : ftp.exzample.daa.jp
    FTP account : daa.jp-user

    php.ini すべてのエラーを表示する

       検索する
    	/display_errors
       470行目くらい  OffをOnに変える
    	display_errors = On
    

    apache再起動

    ubuntu18 ポートスキャン
    20-83のあいだの開いているポートを探す

    
     nc -vz localhost 20-83 2>&1|grep succeeded
    

    外部のコラボレータをGithubリポジトリに追加する

    https://help.github.com/ja/github/setting-up-and-managing-organizations-and-teams/adding-outside-collaborators-to-repositories-in-your-organization

    外部のコラボレータを Organization のリポジトリに追加する

    外部のコラボレータは、Organization の明示的なメンバーではありませんが、Organization の 1 つ以上のリポジトリに読み取り、書き込み、あるいは管理権限を持っている人です。

    Organization のオーナー権限もしくはリポジトリの管理者権限を持つメンバーだけが、
    add outside collaborators to a repository, unless an organization owner has restricted the ability to invite collaborators. For more information, see “Setting permissions for adding outside collaborators.”

    外部コラボレータをプライベートリポジトリに追加すると、Organizationの有料シートが使われます。 詳しい情報については、「ユーザごとの価格付けについて」を参照してください。

    Organization がメンバーおよび外部コラボレーターに 2 要素認証を使うことを求めるなら、メンバーおよび外部コラボレーターはあなたからの Organization のリポジトリでのコラボレーションの招待を受諾する前に、2 要素認証を有効化しなければなりません。

    リポジトリに外部コラボレータを追加する際には、アクセスしてもらうリポジトリ内のフォークにもそのコラボレータを追加しなければなりません。

    1. GitHubで、リポジトリのメインページにアクセスしてください。

    2. リポジトリ名の下で Settings(設定)をクリックしてください。

      リポジトリの設定ボタン

    3. In the left sidebar, click Manage access.

      "Manage access" tab

    4. To the right of “Manage access”, click Invite teams or people.

      "Invite teams or people" button

    5. In the search field, start typing the name of person you want to invite, then click a name in the list of matches.

      Search field for typing the name of a person to invite to the repository

    6. Under “Choose a role”, select the permissions to grant to the person, then click Add NAME to REPOSITORY.

      Selecting permissions for the person

    参考リンク

    ubuntu php curl install

    phpinfo() モジュールの保存場所を確認
    extension_dir /usr/lib/php/20170718 ←ここ

    php 配置済みモジュールの確認

    curl.so がなければインストール
    まずはアップデート

    インストール

    php 配置済みモジュールの確認

    curl.so ← ある

    Apache再起動

    phpinfo() で確認
    cURL support enabled

    mode rewriteと Mysqlユーザー権限 wordpress

    WordPressインストール

    移動 document rootへ


    解凍

    mode rewriteを有効にする (なってなかったら)

    ←こっちが本家

    	
    		  
    		 
    		     <Directory "/var/www/html">
    		        Options Indexes FollowSymLinks
    		        AllowOverride All
    		        Require all granted
    		     </Directory>
    		 
    		


    ディレクトリの一覧表示を有効にする(なってなかったら)

    対象ディレクトリに .htaccessを作ってこの一行を書く
    		Options Indexes FollowSymLinks
    		

    ユーザ名はApacheではない www-dataだ


    アップロードファイルの上限サイズを変更する

    	info.php  phpinfo()でファイルの所在が確認できる
    		
    			 
    			/filesizeで検索 Enter → Nで次の場所
    			  20Mに
    			display_errors On に変更(してなかったら)
    
    		Esc 編集モードの終了
    		/memory_limit  で検索
    		Enter
    		i 編集モード
    		memory_limit = 512M 
    		Esc
    		:wq   保存終了
    
    		

    Apache 再起動

    これで phpinfo() が実行できた
    だめなら OS再起動 windows の再起動

    MySQL バージョン確認

    $ mysql --version  →5.7

    MySQLでmysqld.sockのエラーが出た

    rootユーザーじゃない場合マンドはすべて「sudo」で実行します。
    mysqlコマンドをsudoをつけずに実行すると接続エラーになります。

    	#   ←root権限ならこれ 

    rootパスワードを設定する

    ubuntu18 mysql5.7 root password 設定 の記事参照
     

    rootパスワードを忘れた場合

    >MySQLでユーザを作成し、権限を設定する方法

    DBを作って,全権限を”既存”tanakaユーザーに追加

    	
    	   CREATE USER 'tanaka'@'localhost' IDENTIFIED BY 'wert';
    	   create database press;
    	   grant all on press.* to tanaka@localhost identified by  'wert';	
    
    	ユーザー確認(したければ)
    	   SELECT Host, User FROM mysql.user;
    	tanakaの権限を確認(したければ)
    	    SHOW GRANTS FOR tanaka@localhost;
    
    	rootの全権限を既存tanakaユーザーに追加 ← localならやっておけ
    	GRANT ALL PRIVILEGES ON *.* TO 'tanaka'@'localhost';
    
    	

    → adminerでDB名が出てこない → Database – Refresh する

    Apacheの実行ユーザの変更方法

    /etc/apache2/apache2.conf を見てみると、

    		# These need to be set in /etc/apache2/envvars
    		User ${APACHE_RUN_USER}
    		Group ${APACHE_RUN_GROUP}
    	

    とあるので、
    /etc/apache2/envvars を開いて、

    		export APACHE_RUN_USER=tanaka
    		export APACHE_RUN_GROUP=tanaka
    	

    にかえる

    imageMagic インストール

    後回し

    	sudo apt-get install php-imagick
    		sudo php -m | grep imagick
    		sudo service apache2 restart
    
    		apt install libmariadb-dev-compat
    		apt install libmariadbclient-dev
    
    	

    Ubuntu 18.04 LTS にMySQL Serverをインストール

    Ubuntu 18.04にMySQL 5.7をインストールして、rootパスワードを変更するところまで。

    インストール

    aptでインストール

    以前はインストール中にrootパスワードの入力画面が表示されていたと思いますが、
    表示されなくなっていますね。

    インストールした後、「mysql_secure_installation」を実行してrootの
    パスワードを設定していきます。

    エラーが出る場合は下の記事を参照
    MySQLでmysqld.sockのエラーが出た

    最初に「VALIDATE PASSWORD PLUGIN」を使用するかの確認です。
    パスワードプラグインを使用して強固なパスワードを強制するか?

    ローカル環境なので n でいい

    Securing the MySQL server deployment.
    Connecting to MySQL using a blank password.
    VALIDATE PASSWORD PLUGIN can be used to test passwords
    and improve security. It checks the strength of password
    and allows the users to set only those passwords which are
    secure enough. Would you like to setup VALIDATE PASSWORD plugin?Press y|Y for Yes, any other key for No: n

    rootのパスワードを設定します。

    Please set the password for root here.
    New password: [設定するパスワードを入力]
    Re-enter new password: [設定するパスワードを再入力]
    Estimated strength of the password: 100
    Do you wish to continue with the password provided?(Press y|Y for Yes, an
    y other key for No) : y

    anonymousユーザーを削除するか。
    利用しないのでyを選択しました。

    By default, a MySQL installation has an anonymous user,
    allowing anyone to log into MySQL without having to have
    a user account created for them. This is intended only for
    testing, and to make the installation go a bit smoother.
    You should remove them before moving into a production
    environment.
    Remove anonymous users? (Press y|Y for Yes, any other key for No) : ySuccess.

    rootで外部から接続可能とするか。
    「y」で接続不可としました。

    Normally, root should only be allowed to connect from
    'localhost'. This ensures that someone cannot guess at
    the root password from the network.
    Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
    Success.

    デフォルトの「test」データベースを削除するか。
    「y」で削除を選択しました。

    By default, MySQL comes with a database named 'test' that
    anyone can access. This is also intended only for testing,
    and should be removed before moving into a production
    environment.
    Remove test database and access to it? (Press y|Y for Yes, any other key f
    or No) : y
    - Dropping test database...
    Success.
    - Removing privileges on test database...
    Success.

    テーブルをリロードするか。
    「y」でリロードを実行しました。

    Reloading the privilege tables will ensure that all changes
    made so far will take effect immediately.
    Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
    Success

    起動する

    rootでログインする

    ログアウトする

     \q 

    Windows system Linux

    https://qiita.com/takepong/items/1b39a8096ac3db8012da

    Windows Subsystem for Linux を有効にする

    まず”Windowsの機能“というウィンドウを開きます。
    1. スタートメニュー歯車アイコンをクリックして設定を開く
    setIcon.png
    2. アプリをクリック

    appIcon.png

    3. 左側のアプリと機能をクリック(既に選ばれている筈ですが念のため)
    akicon.png

    4. 設定ウィンドウの幅により、広ければ右サイド、狭ければスクロールした下の方に「関連設定」プログラムと機能という項目があるのでクリック。プログラムと機能というウィンドウが開きます
    pkicon.png

    5. 左側にWindowsの機能の有効化または無効化という項目があるのでクリック。Windowsの機能というウィンドウが開きます。
    wku.png

    または
    1. スタートメニューからWindows システム ツールの項目の中のコントロール パネルを選ぶ。コントロール パネルが開きます。
    menu0.png
    2. プログラムという項目にあるプログラムのアンインストールをクリック。プログラムと機能というウィンドウが開きます。
    uninst.png
    3. 上記5番に同じ

    • コントロール パネルコルタナさんにconと入力して探してもらうという手もあります。

    Windowsの機能に無事たどり着いたら、スクロールしていってWindows Subsystem for Linuxという項目を探してください。ここにチェックを入れてOKします。この機能は再起動後に有効になります。再起動を促すダイアログが出てくるので再起動してください。
    kinou2.png

    • もしここがWindows Subsystem for Linux (BETA)となっていたら、まだFall Creators Updateが適用されていませんのでWindowsをアップデートしてください。
    • BETA版ではなくなったので、以前のように「開発者モード」にする必要はなくなりました。

    Ubuntuをインストールする

    Windows Subsystem for Linux(以下WSL)ではストアから複数のディストリビューションがインストールできますが、ここではUbuntuを選びます。(2017年10月現在では他に”openSUSE“、”SUSE Linux Enterprise Server“が選べます)

    ストアを起動してubuntuで検索してください。
    見つけたらインストールします。
    store0.png

    スタートメニューからUbuntuを選んで起動します。初回起動時にインストールが始まり、しばらく時間がかかります。インストールが完了すると最後に、ユーザーネームパスワードの入力がありますが、これはWindowsのアカウントとは全然関係はありませんので自由に決めてください。パスワードは確認のため2回入力することになります。パスワードは今後何度も入力することになるので絶対忘れないでください。
    ubuntu-inst.png

    インストールが終了すると画面にプロンプトが出て入力待ち状態になります。
    プロンプトはデフォルト状態では
    ユーザー名@ホスト名:カレントディレクトリ$
    となっています。ホスト名はWindowsの設定システムバージョン情報で確認できる”デバイス名“が設定されています。
    起動時のカレントディレクトリは”~“と表示されていますが、これはユーザーのホームディレクトリで、実際には/home/ユーザー名です。
    以下、ここにキーボードからコマンドを打ち込んでプログラム/パッケージのインストールや設定をしていきます。
    まずはインストールに使うapt-getを最新にしておきます。apt-getコマンドを使用するには管理者権限が必要になりますのでコマンドの前にsudoをつけて実行します。

    と打ち込んでEnterを押すとパスワードの入力が求められるので上で設定したパスワードを入れてください。(一度パスワードを入れてから数分間はsudoコマンドのあとパスワード入力を省略してくれます)
    ちなみにこのupdateでaptライブラリが最新版に更新されます。
    続いて、インストール済みパッケージを最新バージョンにアップデートします。

    アップグレードするパッケージがあった場合、「これこれの容量のディスクスペースを消費するがインストールしてよいか?」というようなことを訊かれますのでyを入力してください。いちいちyを入力するのが面倒な場合は

    と、-yを付け加えておくとこちらの返事を訊かずに先に進みます。
    アップグレードした結果不要になったパッケージがある場合はそのように表示がされますので、不要パッケージを削除しておきます。


    Fall Creators Update以前に既にUbuntuを導入済みのひとへ
    コマンド プロンプトPowerShellからbashと打ち込んでインストールした”Bash on Ubuntu on Windows“は、今回インストールした”Ubuntu“とは別インスタンスになります。前者は将来的には廃止方向ということなので適宜新環境に移行しましょう。

    参考:
    What’s new in WSL in Windows 10 Fall Creators Update – MSDN Blogs


    Apacheをインストールする

    LAMPL(Linux)の導入が終わりましたので次にA(Apache)をインストールします。

    以下、インストール時には「これこれの容量のディスクスペースを消費するがインストールしてよいか?」というようなことを毎度訊かれますのでyを入力してください。いちいちyを入力するのが面倒な場合は upgrade の時と同じようにコマンドに -y をつけておくと質問を省略できます。
    インストールが終了したら、動作確認をしてみましょう。
    ApacheはWebサーバーなので、まずサービスを立ち上げます。

    無事起動すると

    Starting Apache httpd web server apache2
    

    と表示されます。その下に

    AH00076: Failed to enable APR_TCP_DEFER_ACCEPT
    

    と警告が出ますが今は無視しておきます。Apacheが起動したら、普段使っているWebブラウザを立ち上げてください。(Edge/IE/Chrome/FireFoxなど)
    アドレスバーにlocalhostと入力してエンターを押してみてください。
    apache.png
    無事にApache2 Ubuntu Default Pageが表示されれば成功です。
    (表示されるファイルは/var/www/html/index.htmlです。)

    なお、サービスの停止は

    再起動は