- 1. 自分的よく使うGitコマンドまとめ
- 2. Dockerコンテナ内でGitコマンドを実行しようとすると「Operation not permitted」というエラーが出るときの対応
- 3. リモートブランチをローカルに持ってくる
- 4. Git コマンド長すぎてめんどくさい問題を解決する方法
- 5. git clone プロジェクト名のディレクトリを作成したくない
- 6. bitbucketのpipelinesでgit describeでエラーにならないようにする
- 7. 機能だけで覚える基本的なGitコマンド 〜ほぼほぼ作業順〜
- 8. Git で困った時の対処法
- 9. gitの始め方
- 10. 【Git/Github/SourceTree】Gitのグローバル無視リスト(gitignore_global)を編集する(macの場合)
- 11. Git&GitHub備忘録
- 12. Gitを勉強する前に~VCS入門~
- 13. 初めてのBitbucket
- 14. 初心者がチーム開発で周りに迷惑かけない為のプルリクエストまでのチェックリスト
- 15. githubのPRで、Files changedが膨大な数になっていた時の対処について
- 16. プログラミング初心者がgitでつまずいた。英語の意味を調べて、専門用語を深く理解しました。
- 17. gitshを使う
- 18. git 初心者書置き
- 19. 忙しい人向けVue.jsプロジェクト作成
- 20. Progate Git&Command Line編
自分的よく使うGitコマンドまとめ
Git 使い始めてしばらく経ったけどしょっちゅうコマンド忘れて調べてるので、自分がよく使ってたり、いざという時わからなくて調べたものをまとめる。
# 基本的なもの
## ローカルリポジトリの作成
`git init`## リモートリポジトリをクローン
`git clone リモートリポジトリのアドレス`## ブランチ系
### 表示
* ローカルブランチ
`git branch`* リモートブランチ
`git branch -r`* 全部
`git branch -a`* マージ済ブランチ
`git branch –merged`### 作成
* 現在のブランチから切る
`git branch ブランチ名`* 切るブランチを指定
`git branch ブランチ名 元にするブランチ名`
元にするブランチ名のところをコミットハッシュにすればその位置から作成できる。### 移動
* ブランチの移動
`git checkout ブランチ名`* 新しくブランチを作ってそこに移動する
`git checkout -b ブランチ名`
`git branch
Dockerコンテナ内でGitコマンドを実行しようとすると「Operation not permitted」というエラーが出るときの対応
# 環境
– Windows10 Pro 64bit
– VSCode 1.43.2
– Docker for Desktop 2.2.0.4
– VSCode Remote-Containers使用# エラー内容
“`
bash-5.0# git status
fatal: failed to read object xxxxxxxxx: Operation not permitted
“`# 対処方法
エクスプローラーで該当プロジェクトの`.git`フォルダのプロパティを開き、
`Read-only (読み取り専用)`のチェックを外すと問題なくGitコマンドが実行できるようになります。![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/189802/d26c6095-ec77-5f88-87af-483abc30fa78.png)
リモートブランチをローカルに持ってくる
##既存プロジェクトにアサインされたときすでに存在するリモートブランチをローカルにもってきたい
“`
git checkout -b dev origin/dev
“`dev の部分はローカルのブランチ(自分で命名)
origin/dev の部分はリモートのブランチ“`
git branch -a
“`
でリモートのブランチを確認できますq で抜けれます。
Git コマンド長すぎてめんどくさい問題を解決する方法
Git を扱う際に、`checkout`、`branch`、`commit`、`status` などを使用しますが、これが長くて打つのだるいなぁと思ったことはないでしょうか。そんなめんどくささは「Git エイリアス」を使うと解決することが出来ます。
#Git エイリアスとは
* Git コマンドを別名で実行(入力)できるもの
* コマンドを短縮化できるので入力が非常に楽になるものというくらいの理解で OK でしょう。
#設定方法
設定方法は超シンプルで、コマンドで実行する方法と `.git/config` ファイルへ書き込むする方法があります。##コマンドで設定する方法
以下のコマンドを実行するのみです。“`
$ git config –global alias.co checkout
$ git config –global alias.br branch
$ git config –global alias.ci commit
$ git config –global alias.st status
“`このような設定をすることで、例えば次のコマンド
git clone プロジェクト名のディレクトリを作成したくない
# git cloneするとデフォルトでプロジェクト名のディレクトリができる
* デフォルト実行
“`
$ git clone https://127.0.0.1/TEST/example.git
$ ls -l
example
“`* ディレクトリを作成せずclone
“`
$ git clone https://127.0.0.1/TEST/example.git ./
$ ls -l
readme.md
sourcefiles
“`
※プロジェクト直下のファイルが配置される
bitbucketのpipelinesでgit describeでエラーにならないようにする
# はじめに
普段 kotlin で開発しているのですが、ビルドに時間がかかって困っています。
なので、bitbucketのpipelinesで自動的にbuildして、s3に上げて、それを使おうとしたのですが、tagを付けてもgit describeがpipelines上ではエラーになってしまいます。
ローカル環境ではエラーにならないのに全然理由がわからずに困っていたのですが、やっと解決したので共有します。## git describeでエラーになる理由
pipelinesのBuld setupに秘密がありました。
ログをみると以下のようになっているかと思います。
“`
+ umask 000
+ GIT_LFS_SKIP_SMUDGE=1 retry 6 git clone –branch=”master” –depth 50 https://x-token-auth:$REPOSITORY_OAUTH_ACCESS_TOKEN@bitbucket.org/$BITBUCKET_REPO_FULL_NAME.git $BUILD_DIR
Cloning into
機能だけで覚える基本的なGitコマンド 〜ほぼほぼ作業順〜
#Gitコマンド(作業順覚書)
前提として、– GitHubのアカウント作成済み
– sshKeyを登録済み
– git version 2.16.3であること。
ちなみに、概念と共にコマンドを知る記事も書いてみたので、よろしければご覧ください。
[git概念と共に覚えていくgitコマンド
](https://qiita.com/Nedward/items/afeab9fe9f88e6956af5)## Gitに最初にプロジェクトを上げるまで編
### git init
gitの管理下に置きたいファイルの中にいる状態で、このコマンドを使って、gitファイルを作る“`
$ git init
“`### git add
ファイルやディレクトリをインデックスに追加するために使うコマンド。 追加する時はファイル名やディレクトリ名を直接指定できる他に、*を使いワイルドカードで複数対象を指定することもできるが、大抵は、ステージングしたいものは全部だし、gitにあげたくないものは、git ignoreするので、大抵、全指定を意味するピリオド「.」を使う。“`
$
Git で困った時の対処法
# ブランチを間違えたとき
– 対処法:正しいブランチに修正を反映させる。
“`bash
# 1. 作業していた内容を退避する。
$ git stash# 2. 正しいブランチに切り替える。
$ git checkout [正しいブランチ名]# 3. 退避した情報をもとに戻す。
$ git stash pop
“`# コミットメッセージを間違えたとき
– 正しいコミットメッセージで上書きする。
“`bash
$ git commit –amend -m [修正後のコミットメッセージ]
“`# `git add` し間違えたとき
– 間違えたファイルを `git add` する前の状態に戻す。
“`bash
$ git rm –cached [間違えたファイル]
“`# コミットを間違えた場合
– コミットを取り消す。
“`bash
# 直前のコミットを間違えた場合
$ git reset –hard HEAD^
# または
$ git reset –hard @^# n個前のコミットを間違えた場合
$ git reset
gitの始め方
# git関連メモ
Githubのアカウントは作っているものとします。
環境はUbuntuです。## ssh設定
sshとは自分のパソコン内で秘密鍵と公開鍵を生成し、github上に公開鍵を登録することでユーザー名やパスワードの入力なしに安全に自分のリポジトリを操作できるようにする通信暗号化技術です。
#### 鍵生成
生成する場所は ~/.ssh/ です。
最も一般的なrsa暗号を使用するといいと思います。
デフォルトの暗号強度である2048bitでも十分ですが、さらなるセキュリティの強化のために4096bitにしておきます。
コメントの部分にはgithubに登録しているメールアドレスを使用するといいでしょう。“`
$ ssh-keygen -t rsa -b 4096 -C “mailaddress@hoge.com”
# -t 暗号化方式を指定
# -b 暗号化強度を指定
# -C コメントを設定Generating public/private rsa key pair.
Enter file in which to save the key (/Use
【Git/Github/SourceTree】Gitのグローバル無視リスト(gitignore_global)を編集する(macの場合)
# SourceTreeでグローバルで無視したファイルをやっぱりGithubにあげたい場合(macの場合)
下記のコマンドを打つと、現在グローバルで無視しているファイルの一覧が表示されます。
その一覧から、グローバルの無視を解除したいファイル名を削除します。`open ファイル名`で、ファイルを開くコマンドになっています。
“`shell
$ open ~/.gitignore_global
“`開いたファイルを修正後、保存して閉じて少しすると、SourceTreeの差分に反映されるようになります。
**設定ファイルなので、修正するときは慎重に行ってください。**
**こちらの作業を行ったことによる責任は一切負いかねます。**# この記事を書いた経緯
またこのような事態は起こるだろうと思い、備忘録として。
Git&GitHub備忘録
# はじめに
## 目的
最近、@daikikatsuragawa は[Git](https://git-scm.com/)や[GitHub](https://github.com/)に興味があり、試行錯誤や失敗を繰り返しつつ学習しています。本記事では、試行錯誤や失敗を踏まえて学んだメモやコマンドなどを書き留めていきます。
## ※断り
本記事は筆者の学びに応じて更新されます?
本記事に誤りが存在した場合、積極的に編集リクエストをしてください?♂️# Git&GitHub備忘録
## フォーク元リポジトリのブランチの更新をフォーク先リポジトリのブランチに同期させる方法
以下のコマンドを実行!
“`bash:フォーク元リポジトリのブランチの更新をフォーク先リポジトリのブランチに同期させる方法
# 以下、TARGET_BRANCHの値は同期させたいブランチ名に変更してください
TARGET_BRANCH=“master”
git fetch upstream
git checkout ${TARGET_BRANCH}
git merge upstream/${TARG
Gitを勉強する前に~VCS入門~
## はじめに
Gitを理解するためには、その前提として「VCS」という思想を学ぶ必要があります。
### この記事の対象者
– Gitを理解する準備がしたい人
– 駆け出しエンジニア### なぜこの記事を書いたのか
駆け出しエンジニアの頃に[VCS入門](https://github.com/masaru-b-cl/introduction-to-vcs)で勉強した時のメモを発見したので供養です。## VCSの意義
VCSの能力は、主に次の2つです。– 履歴を残す
– 作業の競合を防ぐ### 履歴を残す
履歴が残ると何ができるのか。大まかには次の3つができるようになります。– 履歴を残す
– 参照
– 再現
– 分岐#### 参照
履歴をたどることで、誰がいつ何をやったかを確認することができます.
一般的なVCSでは履歴の検索機能もありますので、簡単に対象となる履歴を参照することができます。#### 再現
VCSを使うと、履歴を参照するだけでなく、その時点の状態を再現することも可能です。つまり、動かなくなったとしても正常
初めてのBitbucket
rails チュートリアルを進めるにあたって、bitbucketを一番初めに使用するときにわからないことがあって苦しんだためメモ
・cloud9(aws)環境で実施
・アカウント作成は省略
##公開鍵の作成
“`sh:console
cat ~/.ssh/id_rsa.pub
“`
上記のコマンド入力で公開鍵を所持しているか確認できます。所持していない場合には`No such file or directory`と表示されます。
鍵を所持していない場合は“`sh:console
cd ~/.ssh #sshフォルダに移動
ssh-keygen -t rsa -C saber@example.com # 自分のメールアドレス入力
“`
Entキー押すと色々と出てくるが特にいじる必要ないのでそのままEntキー何回か押して鍵を作成。鍵を作成した後に先ほどの“`sh:console
cat ~/.ssh/id_rsa.pub
“`
を実行して鍵を表示させます。
##公開鍵の追加
bitbucketにログイン後、
ユーザーアイコン
↓
Bitbucket settin
初心者がチーム開発で周りに迷惑かけない為のプルリクエストまでのチェックリスト
#はじめに
2020年3月30日。
僕はプルリクを出した際に、本来の修正箇所と全く関係ない「インデント直してー」
「ここのスペースいらないよー
「console.log消しといてー」などのミスを連発してしまいレビュアーの方に大変負担をかけてしまいました。
そこで原因を探って行った所、本来みんなが踏んでいるプルリクを出すまでのチェック項目を踏んでいなかった為、ミスを連発していることが発覚しました。**本記事は今後、僕がケアレスなミスをなくす為にプルリクを出す前に確認するチェックリストです。**
「自分はこうやってるよー」などのより良いやり方があったら教えていただけると幸いです。#前提
「チーム単位でフォーマッターなどを導入して仕組みで解決する」事が優先されるべきです。
可能であればチームに対して進言し、より良い仕組みの導入を検討してください。
フォーマッターについて知る上で、個人的にはこちらの記事が参考になりました。
https://wemo.tech/3307その上で、フォーマッターを導入していないチームの中で、個人の裁量での対処法が本記事になります。
#1 作
githubのPRで、Files changedが膨大な数になっていた時の対処について
#問題
githubでPull Requestをする際に、差分ファイルを確認すると、2982と表示されていた。明らかに管理するべきではないものがpushされてしまっている。
#原因
こちらのFilterFileTypesで確認すると、jpgが多いことがわかった。
ディレクトリから確認していくと、
プログラミング初心者がgitでつまずいた。英語の意味を調べて、専門用語を深く理解しました。
gitについて1から復習してみました。
# Git
gitは、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである。
要は、複数人で開発するときに、誰がどれをいじったのか分からなくてグチャグチャになるのを防止するためのシステムのことなんだなーてことか。よし。
#Github
これはgitを扱うためのツールのことですな。
っと書き始めてたら、最強に分かりやすく説明している記事を見つけてしまいました。
こちらを読めば完璧。
https://qiita.com/nnahito/items/e546b27f73e7be131d4e
でも疑問点が二つ湧いてくる。
##pullとbranchって一緒じゃね?あと、pushとmargeって一緒じゃね?
すごい調べたけど、概念が違うっぽい
branchとmargeは、masterから枝分かれを作ったり、合体したりする行為
pullとpushはそれを包括して取ってきたり送ったりするからconflictが起こりやすい。
gitshを使う
https://github.com/thoughtbot/gitsh
ver0.14時点の情報。
## インストール
readmeに書いてある。
macならhomebrew、archlinuxならmakepkgとかでインストールできる。## プロンプトの設定
### 文字列
https://github.com/thoughtbot/gitsh/blob/master/lib/gitsh/prompter.rb
`git config`で`gitsh.prompt`を設定する。例えば、初期設定ではブランチ名が15字までしか表示されない。
全部表示したいなら`%B`のかわりに`%b`を使えばよい。### 色
https://github.com/thoughtbot/gitsh/blob/master/lib/gitsh/prompt_color.rb
同様に`gitsh.color.___`を設定する。
プロンプトで`%c`と`%w`にはさまれた部分が、状態によって色づけされる。例えば、初期設定ではデフォルトの色がblueで見づらい。
`gitsh.color.de
git 初心者書置き
gitとは俗にいうバージョン管理ツール
よく使われているgithubを使用branchを作成後ローカルで作業する場合
windowsユーザーはまず[git for windows](https://gitforwindows.org/)が必要な
為downloadする終わったら コマンドで初期設定をやる
“`
git config –global user.name ‘yourname’
git config –global user.email ‘yourname@example.com’
“`vscodeでソース管理で連携させたら
初回コミットは宛先が必要なため“`shell
git remote add origin https://github.com/yourname/gitpath.git
“`
をしておくこと。
github上で**clone or download**ってボタン押したらURLあるので
`gitpath.git`の部分をそこに入れてね次に初回push等をする際宛先聞かれるので
“`shell
git push
忙しい人向けVue.jsプロジェクト作成
# 開発環境
Visual Studio Code (Onlineでも良い)
拡張機能 Vetur(便利です。)# 叩くコマンド
プロジェクト作成
“`bash:
>vue create“`
⇒必要なオプションを選択する(今回はTypeScriptや画面遷移させるRouter等を追加)
※追記 tsc -v でバージョン見るとなぜか古いが、内部的には入ってるっぽい。“`bash:
>C:\Users\>npm ls -g typescript
C:\Users\\AppData\Roaming\npm
`– @vue/cli@4.2.3
`– @vue/cli-ui@4.2.3
`– typescript@3.7.5
“`![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286189/c53d1d7a-9240-e740-ebba-81cc48365ebd.png)
ここで内部的にn
Progate Git&Command Line編
ProgateのGitとCommand Lineを解き終わったので感想を書こうと思います。
全体的な感想としては、いちばんProgateの中で一番カンタンでした。
つぎは次はPythonをやっていく予定です。