スマートデバイス・テクノロジーのOrganizationアカウントが作成されて、社内の意識の変化から1投稿/週を基本に!ということからいきなりネタにぶち当たったのでコマンドの話をしようと思います。
Gitコマンド
まずは、手始めに並行開発では欠かせなくなってきているであろうGitコマンドたちから
とりあえずリストアップ
- git add
- git add /path/to/file
- git add -p
- git add .
- git commit
- git commit -m
- git commit --amend
- git push
- git push -u origin branch-name
- git push --delete origin branch-name
- git pull
- git clone
- git clone https://example.com/git/repository.git
- git clone -b develop https://example.com/git/repository.git
- git checkout
- git checkout branch-name
- git checkout /path/to/file
- git checkout -b new-branch
- git branch
- git branch
- git branch -m
- git reset
- git reset HEAD /path/to/file
- git reset --hard
- git reset
- git merge
- git merge branch-name
- git fetch
- git fetch --all
- git rm
- git rm -rf /path/to/directory
- git rm --cached /path/to/file
- git rebase
- git rebase -i HEAD~hoge
- git revert
- git blame-someone-else
- git rev-parse --abbrev-ref HEAD
- git diff
- git init
- git stash
- git stash pop
- git stash clear
- git stash drop
- git status
詳しい説明
見た感じなんだこれ?って言うGitコマンドがあるかと思います。
そういうものだけ説明します。
$ git add -p
部分的にstagingしてあげるためのコマンド。
これ使うぐらいなら tig
コマンド使ったほうがいいよ?って言われたのが去年...
$ git commit --amend
結構有名ですが、初心者の方のために!
amend
は修正するという意味があります。
間違えたコミット名を修正するときや、ちょっとした修正なのにコミット数増やすのは嫌だという時に使います。
$ git push --delete origin branch-name
リモートブランチを削除するコマンド。特にGUIを使いたくない私みたいな人におすすめです!!
$ git clone -b develop https://example.com/git/repository.git
リモート先にあるブランチ名を指定してcloneする
$ git rm --cached /path/to/file
Gitで管理しないように弾きます
$ git rebase -i HEAD~hoge
過去のコミットを編集したりなんだりできる強いコマンド
以前に私のブログで書いたので見てもらえたら嬉しいです!!
$ git blame-someone-else
社内Gitを使っているのに git log
を使うと見事に自分のGitHubアカウントがバレちゃった!!アハハハハハみたいなことがあるのでこの便利なコマンドでAuthorを変更します。
jayphelps/git-blame-someone-else
使い方は上記リポジトリを参照
$ git rev-parse --abbrev-ref HEAD
現在のブランチ名を表示します。
大体こんな感じで大丈夫でしょうか??
UNIXコマンド
あんまりないかもしれませんが、あとMac専用のコマンドもあるかもしれませんが、リストアップだけ
リストアップ
- tree
- jq
- cd
- rm
- mv
- wget
- curl
- ssh
- python
- vim
- open
- ssh-add
- ssh-keygen
- ruby
まだあるかもしれないですがなんか思いつかない。
感想
実際、今までガチボッチ開発マンだった私ですが特に増えたコマンドはなかったです。
実業務でも実際にこれだけ使えれば+αのコマンドが使えれば全然余裕だと思います。
UNIXコマンドは基本的になんか私がGUI嫌いだからCUIでドヤリング決めてるだけです。
また、 Python
は今している案件のテストデータ自動生成ツール(通称:錬成陣)するときに怪人なので3時間程度で4つ作りました。Python3系ばかり触ってきたのでPython2系はちょっと懐かしかったりなんだったり...