コマンドでコミット→プッシュ
-
cdコマンドでプロジェクトのトップディレクトリに移動する。
-
差分ファイルを追加
$ git add -A
-
コミット
$ git commit m '任意のメッセージ'
-
プッシュ
$git push リポジトリ名 ブランチ名
$ git push origin master
プロジェクトに紐づいているリモートリポジトリの情報を確認する。
先にcdコマンドでプロジェクトのホームディレクトリへ移動しておく。その後、下記コマンドを実行。
$ git remote -v
$ git remote -v
origin git@github.com:amaraimusi/cake_demo.git (fetch)
origin git@github.com:amaraimusi/cake_demo.git (push)
リモートリポジトリからプル(履歴が違うと怒られる場合)
$git pull --allow-unrelated-histories リポジトリ名 ブランチ名
$git pull --allow-unrelated-histories origin master
メールアドレスが登録されていない | fatal: unable to auto-detect email address
$git config --global user.email amaraimusi@example.com
参考
コンフリクト(競合)の修正
※暫定版
README.mdファイルでコンフリクト(競合)が起きたとする。
README.mdファイルファイルを開き、手作業で修正する。
修正が終わったら普通に保存。
差分ファイル追加を行う。
$ add README.md
「$ git add -A」でも良い?
コミット
$ git commit m任意のメッセージ
プッシュ
$git push リポジトリ名 ブランチ名
$ git push origin master
GitHubからコマンドでCakePHP2をインストールする
cdコマンドでcake_phpを配置するディレクトリへ移動し、下記コマンドを実行する。
git clone -b 2.x git://github.com/cakephp/cakephp.git
強制的にリモートブランチの最新状態にローカル環境を戻す
間違ってコミットしてまったり、競合が発生していろいろごちゃごちゃ状態になったしまうことがある。
とりあえずソースコードをリモートの最新状態に戻すには下記のコマンドを用いる。
リモートブランチ「origin/master」の最新状態に、ローカル環境をリセットする。
$ git fetch origin master
$ git reset --hard origin/master
- バージョン管理対象のファイルはすべて元に戻る
- バージョン管理していないファイルは消えることがないので安心
- ローカルで誤ってコミットしプッシュ前の状態であっても、コミット状態を解除することができる。
- プルリクエストによる開発環境で役に立つ。いろいろ汚れてしまったローカル環境をリモートブランチの最新状態に戻せる。
履歴からファイルを削除する
下記の方法で履歴からファイルを削除できることのことだが、要検証が必要である。
どうにも不安がぬぐえない。
Githubでpublicなリポジトリにしているなら、リポジトリを作り直したほうがいいのかもしれない。
また、強制プッシュがあるのでチーム開発では勧められない。
GitHubのサポートに連絡してキャッシュを削除してもらわないといけないという。
database.sqlを履歴から削除する例
コマンドを実行するまえにEclipseを閉じること。Unlink~なんとかのエラーが発生する。
ファイル名はパスまで指定する必要があるとのこと。
git filter-branch -f --index-filter "git rm -rf --cached --ignore-unmatch backup/database.sql" --prune-empty -- --all
git reflog expire --expire=now --all
git gc --aggressive --prune=now
git push -f
「git reflog」は履歴から削除。
「git gc」はガベージコレクション。いわゆるゴミ掃除。
「git push -f」は強制push。チーム開発ではつかうべきではない。
Unlinkなんとか~というエラーが出た場合、他のアプリがファイルを使用中なので削除できないという意味。
Eclipseを閉じると上手くいく。
Unlink of file 'xxxx.html' failed. Should I try again? (y/n)
作業中に誤ったブランチで作業を行ったことに気づいた場合の対応 | スタッシュ | git stash
# ステージを取り消す(git add)
git reset ファイル名
# すべてのステージを取り消す
git reset
# スタッシュする
git stash
# ブランチを切り替える
git checkout orign/neko
# 先ほど避けたスタッシュを今いるブランチに適用する
$ git stash apply
- ホーム
- プログラミングの覚書
- Gitの覚書