Splunkぱんだの雑記帳

技術ネタ、備忘録、その他雑記。ぼちぼち更新していきたいと思います。

さとしちゃんのGitメモ (つまずき編その1)

どうも、さとしちゃんです。
今日、帰宅しiTermを開くと…!!!

[Oh My Zsh] Would you like to check for updates? [Y/n]: y
Updating Oh My Zsh
remote: Counting objects: 105, done.
remote: Compressing objects: 100% (53/53), done.
remote: Total 105 (delta 66), reused 87 (delta 48), pack-reused 0
Receiving objects: 100% (105/105), 14.82 KiB | 3.70 MiB/s, done.
Resolving deltas: 100% (66/66), completed with 20 local objects.
From https://github.com/robbyrussell/oh-my-zsh
 * branch            master     -> FETCH_HEAD
   9b1c21a..4fec0a4  master     -> origin/master
Updating 9b1c21a..4fec0a4
Fast-forward
 README.md                                |  2 +-
 lib/git.zsh                              |  8 +++----
 plugins/archlinux/README.md              | 33 ++++++++++++++++++++++++--
 plugins/archlinux/archlinux.plugin.zsh   | 66 +++++++++++++++++++++++++++++++++++++++++++++-------
 plugins/emotty/emotty.plugin.zsh         |  5 ++--
 plugins/hanami/README.md                 | 32 +++++++++++++++++++++++++
 plugins/hanami/hanami.plugin.zsh         | 19 +++++++++++++++
 plugins/jira/_jira                       |  2 +-
 plugins/npm/npm.plugin.zsh               |  5 +++-
 plugins/symfony2/symfony2.plugin.zsh     |  2 ++
 plugins/web-search/web-search.plugin.zsh |  2 ++
 themes/avit.zsh-theme                    |  4 +---
 themes/cloud.zsh-theme                   |  4 ++--
 themes/emotty.zsh-theme                  |  4 ++++
 themes/rkj-repos.zsh-theme               | 10 ++++----
 tools/install.sh                         |  2 +-
 16 files changed, 170 insertions(+), 30 deletions(-)
 create mode 100644 plugins/hanami/README.md
 create mode 100644 plugins/hanami/hanami.plugin.zsh
Current branch master is up to date.
         __                                     __
  ____  / /_     ____ ___  __  __   ____  _____/ /_
 / __ \/ __ \   / __ `__ \/ / / /  /_  / / ___/ __ \
/ /_/ / / / /  / / / / / / /_/ /    / /_(__  ) / / /
\____/_/ /_/  /_/ /_/ /_/\__, /    /___/____/_/ /_/
                        /____/
Hooray! Oh My Zsh has been updated and/or is at the current version.
To keep up on the latest news and updates, follow us on twitter: https://twitter.com/ohmyzsh
Get your Oh My Zsh swag at:  https://shop.planetargon.com/

zshがupdateしましたー!テッテレーん!!
↑どうでもいいよね…

すみません。いつも前置きが長くて。。。
まぁこれを見てわたくし、「これGit使ってね?」と気付いちゃったのです。
しかも偶然にも、ここ2週間弱程”Git”の修行中!
そこで今日は、Gitと絶賛格闘中ななかでのつまづきを紹介し、自分なりに振り返ってみたいと思います。
お付き合いくださいませ。

さとしちゃんのGitメモ (つまずき編その1)

f:id:omachi-satoshi32:20180419220707p:plain

"git pushでまさかの!?"

意気揚々と作ったファイルをpushしようとした、その時!

% git push origin origin/topic_branch_satoshichan_01 (git)-[master]
Everything up-to-date

あれ??既にアップデート済み…だと!?

当然です…コレ、"origin/topic_branch_satoshichan_01""origin/topic_branch_satoshichan_01"pushしちゃってるんです!!OMG!!そんなことできるはずないですよね。

正しくは、

% git push origin/topic_branch_satoshichan_01 topic_branch_satoshichan_01
% git push origin topic_branch_satoshichan_01

通常は2つ目のように実行します。1つ目はフルで書いてあります。
そう、通常実行するコマンドは、省略されているんですね。
これは、「へ〜」と感心してしまいました。

masterブランチについて

% git push origin master (git)-[master]
Counting objects: 4, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (4/4), 401 bytes | 401.00 KiB/s, done.
Total 4 (delta 2), reused 0 (delta 0)
remote: Resolving deltas: 100% (2/2), completed with 2 local objects.
To https://github.com/satoshichan/practice.git
hoge..huga master > master

これ、知ってる人が見たら何やってんだって感じですよね。
はい、ど素人の私はやってはいけない事をしていました。

masterで作業して、pushまでしちゃってる!!

gitでは、基本的にmasterから切ったブランチで追加や削除などの作業を実施します。
そして、切ったブランチをリモートリポジトリ(Github)にpushします。

ちょっと考えればわかることですが、今回のような事をしてしまうとレビューもされずにmasterが更新されてしまいます。
ほんと強引な困ったヤツです。

masterに直接push=テスト環境、本番環境にデプロイされる

くらい思って、注意しないといけないと言う事でした。

ですが基本、masterにpushできないようにGithub上で設定されていることがほとんどだそうです。

でも、これは意識しておいて損はないと感じました。

まだまだ他にもあるのですが、あまり長くなってもあれなので、本日はこの辺で終わりたいと思います。
git使いの皆さんにはごくごく当たり前のことばかりだったと思いますが、どこかの誰かにこの私の失敗を参考にしてもらえたら嬉しいです。

それでは、ほいじゃーのー!