今さら聞けないGit 2020年01月15日

今さら聞けないGit 2020年01月15日

Git を普段から使い倒し 1ヶ月で余裕で使える状態にする

# Git とは

分散型バージョン管理システムです

—-

# まあそんなことは

どうでもいいので、とりあえず使うところから始めましょう

—-

# 前提

– git をコマンドラインで使える状況であること
– Windows であれば [Git for Windows](https://gitforwindows.org/) をインストール
– Mac であれば `brew install git` (homebrew をインストールしている前提)

—-

# 適当に git のローカル議事録置き場を作る

例:議事録置き場

“`
└── Documents
└── Minutes
“`

—-

# Document/Minutes に移動し git 初期化

“`
$ cd Documents/Minutes
$ git init
“`
これで準備完了

—-

# アジェンダを残します

“`
$ vim 20190115-SRE-cost-down-MTG.md

## アジェンダ

1. ほげ: 卜部

元記事を表示

GitHubのプルリク時とかで、特定のcommit間の差分を出す (ブランチ同士も可

プルリクなんかで差分見せる時に、どこを見せたらわかりやすいかなと悩むことがある。
その場合、複数commitをまたいで、特定のcommit 2点間でdiffを取れたので報告。

# compare

URLで指定するのが早そう。

`https://github.com///compare/`

上記のように、repository名のあとに、compareとして、比較したい2つのコミット、ブランチを `…` でつなぐ。
ここの指定については、 `git diff` の指定と同様にできそう。

“`shell:diffの指定例
$ git diff 114514b fa52110
“`

上記の `git diff` の例のように、コミット間でもブランチ間でも、ok

元記事を表示

SourceTreeSetup-3.3.6を導入、Cloneエラー解決

指定リポジトリをクローン時に **Failed connect to BitBucket.org:443** エラーが出た

調べたところ下記で解決(※Googleログインでアトラシアンにログイン後)

ツール -> オプション -> ネットワークで
**Git/Mercurialにプロキシサーバー設定を追加**にチェックを入れる。

cloneできた。

![SourceTree設定.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/17904/14d548b7-f806-4f17-585d-1cf7db5ba421.png)

参考URL: **http://vild.hatenablog.com/entry/2015/08/20/171535**

元記事を表示

旧リポジトリの資源を新規リポジトリへクローンしたい

## はじめに
未経験からプログラマー転職して2年目になります。

今回は、元リポジトリの資源をそっくりそのまま、新しいリポジトリでバージョン管理するための手順を初めてやってみたのですが、少し手間取りました。
そのため、今回学んだことを自分なりにまとめてみました。
どなたかの役に立てれば幸いです。

もし間違いやご意見等ありましたら、学びになるのでぜひご教授ください。

## 参考URL
– [gitリポジトリの複製](https://qiita.com/syuji-higa/items/e380289502c7896daf0f)
– [Github公式(Adding a remote)](https://help.github.com/en/github/using-git/adding-a-remote)

## 1.旧リポジトリから資源をクローンする
`git clone 旧リモート先(URLの場合:https:~.git)`
`git clone 旧リモート先(SSHの場合:〇〇@github.com:~.git)`
こちらはお好みで。
## 2. 「.git」ディレクトリを削

元記事を表示

git cloneできないとき(503error)

# git cloneできない!
下記のようなエラーがでて困っていました。

“`
fatal: unable to access ‘http://hoge/example.git/’: The requested URL returned error: 503
“`

#### 原因:プロキシを設定しているから
– プロキシを経由しないように、no_proxyを設定します

“`
export no_proxy=’hoge’
“`
※`hoge`にはホスト名が入る

– `git clone`する
– このとき認証があったら、clone元のサイトの認証情報を入力する
– もし入力ミスをしてcloneできなかったら、windowsの資格情報マネージャーから該当する資格情報を削除する

元記事を表示

aliasを使ってコマンドを省略する

可能な限り省略コマンドを書いてコードを打つ時間を減らしたいという思いがあったため、
aliasを組んで省略コマンドを記載しています。

#### aliasを組むメリット
1. 打つのが早くなることによる開発スピードの向上・ストレスの削減
2. よく使うコマンドを打つ際に、思い出すという労力を使わなくて良くなる。

#### aliasを組むデメリット
1. 自分で組んだaliasコマンドを覚えないと利便性がない
2. 省略コマンド元のコマンドを忘れることがある
3. (history | grepと比べて)何もしなくて良いという利点がある。

大筋のやり方については下記を参考にしています。
https://qiita.com/ma_me/items/f76295f3da9579043bbc

## viで記載

“`
vi ~/.bash_profile
“`

下記の省略コマンド群をコピペし、再起動をかけたのち(source ~/.bash_profile)は

“`
vb
“`

でも.bash_profileの変更をすることが可能です、

## 省略コマンドを

元記事を表示

LaTeXで書いたレポートをGitLabで管理して、GitLab-CIすることのメリット

– 自分の環境じゃなくてもコンパイルできることを確信しながらTeXをかける。
– ほかのパソコンからもブラウザで今の進捗状況を確認できる。
– バックアップにもなるのでリスクを減らせる。

元記事を表示

基本のGitコマンド

#はじめに
チーム開発でよく用いれれているGitHubを使用するために必要なコマンドをまとめたいと思います。
前提としてGitHubのアカウントを登録しているという条件で進めていきます。
登録していない方は下記のリンクより行ってください。
[GitHubへの登録/ログインはこちらから](https://github.co.jp/)

#基本的なコマンドについて
**・初期設定を行う**

“`コマンド:
$ git config –global user.name “(GitHubのユーザーネーム)”

$ git config –global user.email “(GitHubのアドレス)”
“`

**ローカルにリポジトリを作成して、リモートにプッシュする**

“`コマンド:
//リポジトリを新規に作成
$ git init

//全てのファイルの場合
$ git add .
//指定したファイルのみ場合
$ git add (ファイル名)

$ git commit -m “(プッシュした時のコメント)”

//プッシュ先のプロジェクトを選択
$ git remo

元記事を表示

Gitのメリデメ(主観)と用語と簡単な使い方

### はじめに

最近、アサインされるプロジェクトでGitを使用しているところが増えてきました。

Gitのプロジェクトに入ったとき、最低限以下だけ覚えておけば、何とかなるものをメモしてみました。

### Gitのメリデメ

主観ですが・・・

<メリット>
・アジャイル開発しやすい。(カンバンとか)

<デメリット>
・ブランチ管理が複雑になりやすい。(スパゲッティ管理。せめてアルデンテで)

### 用語の説明

リポジトリとは、Gitがバージョン管理下におく場所のこと。

ブランチとは、コミットIDの束を集めたリストのポインタみたいな感じ。

インデックスとは、コミットされる直前のファイルが置かれる場所。

コミットとは、ローカルリポジトリに変更履歴を記録する作業のこと。

### 既にあるリポジトリを使いたい場合

$ git clone
⇒(すごい)平たく言うと、ダウンロード(cloneっていう名前がややこしい)。

$ git checkout <ブランチ名>
⇒ 作業ブランチの切り替え。

$ git status
⇒ 現在のブランチや、未コミットのファイルが確認でき

元記事を表示

git pushで403エラーが返された話

# はじめに
* Gitの勉強をしていて、push時に403エラーが返された

## エラー内容
“`
$ git push origin master
remote: Permission to アカウント1/リポジトリ名.git denied to アカウント2.
fatal: unable to access ‘https://アカウント1@github.com/アカウント1/リポジトリ名.git’ : The requested URL returned error: 403
“`
* アカウント1が、アカウント2にアクセスしようとしていた
* 当たり前だけどアカウント1にはアカウント2にアクセスする権限がないので、アカウント2にアクセスが拒否されて403エラーが返されたっぽい

## 解決方法
* アカウント1にアクセスするようにリモートURLを以下のように変更する

“`
$ git remote set-url origin https://アカウント1@github.com/アカウント1/リポジトリ名.git
“`

* 以下のコマンドを実行して、リモートURL

元記事を表示

termuxでgitのbranch名表示できるようにする

## はじめに

termux上で、ターミナル上にbranch名を表示する方法が見つからなかったので備忘として残しておきます。ちなみにamazon linuxやmacなどでもやることは同じです

## gitのinstall

termuxではデフォルトではgit入っていないので、installしておきます

“`shell
pkg install git
“`

## Setting

以下2ファイルのpathを確認します。

“`shell
find ~/../usr/ -name git-prompt.sh
find ~/../usr/ -name git-completion.bash
“`

おそらく、
`/data/data/com.termux/files/home/../usr/etc/bash_completion.d/git-prompt.sh`と
`/data/data/com.termux/files/home/../usr/etc/bash_completion.d/git-completion.bash`
が返ってくるはずです。

あとは.bash_

元記事を表示

[はじめてのiOSアプリ]xcodeで地図アプリを作成(その9)

# はじめに

iOSアプリを作ってみたいけど
何から始めて良いのかわからない

とりあえず、
「やってみました」記事を参考に
地図アプリを真似てみようと思う

という記事の9回目です。

今回は、いままでやってきたことを git でソースコード管理し、GitHub にて公開までします。
とりあえず、今回のシリーズは、これで終了の予定。

## 懺悔(ざんげ)
– 今回のシリーズは、アプリを「作ってみる」ことが主眼だったので git に関することは「あとまわし」だったけど、本当であれば「最初」にすることだと思います
– そのようなこともあり、今回の記事は、あとからgitでソースコード管理し、GitHubと連携することになります
– 一部の方には参考になると思いますが、多くの方には参考になりません

# GitHubアカウントの作成
– ブラウザで、ここ↓にアクセス
– [https://github.com/join](https://github.com/join)
– 手順などの詳細は、他の記事を参照してください
– 簡単に作成できるはずです

# ソースコード管理対

元記事を表示

Pull Request を安全に受け取る方法(Backlog版)

# はじめに
新しく会社に入社する人に向けた Git および Github の勉強会をすることになったので、重要なポイントを確認するために下記の本を読みました。
その時に話をしたいと思うことをいくつかまとめたいと思い投稿することにしました。

Github については本でもまとめられていたり、他の人がまとめられていたりするので、
“Pull Request を安全に受け取る方法” の Backlog 版を書きました。参考にしていただけると嬉しいです。

Github実践入門

#### 関連リンク
関連リンクを下記に載せておくので、必要であれば参考にしてください。。

* Pull Request を送る方法(Backlog版)

元記事を表示

GitとSourcetreeのインストールから、GitHubとBitbucketとのssh接続までの初期設定手順【Windows】

WindowsユーザーでGitのクライアントツールとしてSourcetreeを使用して、GitHubとBitbucketのリポジトリと接続する人向けの初期設定手順です。

Gitについて、Sourcetreeの内蔵Gitを使用する手もありますが、コマンドプロンプトでgitコマンドが使えなかったり、Sourcetreeの起動も遅くなる(らしい)ので、Git for windwosをインストールして、SourcetreeではシステムGitを使用する設定を紹介したいと思います。

手順概要としては以下のとおりです。

1. Git for Windows, Sourcetreeのインストール
2. sshキーの生成とGit Bashでの読み込み
3. Sourcetreeでのsshキーの読み込み
4. GitHub, Bitbucketでsshキーの登録

## Git for windowsのインストール

[Git for windows公式サイト](https://gitforwindows.org/)からインストーラをダウンロードし、ダウンロードしたインストーラを実行します。

イン

元記事を表示

Git-flowを使ってオートデプロイに乗せる話

## TL;DR

オートデプロイ実装するついでにgit-flow導入を検討中。
リリースブランチで最終ステージングテストするよ。

## 背景

手動デプロイからオートデプロイに切り替えるプロジェクトを担当しています。
オートデプロイを実現するにあたって業務フローを見直していたところ、Gitの運用も今のままだときついのでGit-flowに変えましょうという話になりました。

## Git-flowとは?

Gitの運用に関するベストプラクティスの一つです。

提唱元はこちらです。

> A successful Git branching model
> https://nvie.com/posts/a-successful-git-branching-model/

日本語だと以下の記事が大変良くまとまっています(すばらしい!)

> gitの運用ワークフローのメモ(git-flow、github flow等)
> https://qiita.com/ta-ke-no-bu/items/a9854deb61419a0d64c7

Gitにある程度慣れたユーザは「ブランチをどう切って

元記事を表示

間違えてgit commit –amendしてしまったときの解決方法

間違えてgit commit -a –amendしてしまい、
一つ前のcommitに入れたくない変更が入ってしまった。
git resetで戻そうと思い、git logで履歴を確認するが
先頭がamendしたcommitになっておりresetできなくて困った。

解決方法
**git reflog**でHEADの変更履歴がみれるので、
amendする前の状態にresetすることができる。
resetしたあと普通にgit commit -aすることで解決した。

元記事を表示

husky使用時にgit pushするとerror: failed to push some refs to ~

(追記)
下記の問題は[husky v4.0.7](https://github.com/typicode/husky/releases/tag/v4.0.7)で修正された様子。

Node.jsで開発中のリポジトリで、気付いたら`git push`ができなくなっていた。

“`
$ git push origin master
stdin is not a tty
error: failed to push some refs to ‘https://github.com/xxxxx/xxxxx.git’
“`

gitのバージョンは以下の通り。

“`
$ git –version
git version 2.24.1.windows.2
“`

* エラーが起きたrepoで`commit`や`pull`→できる
* エラーが起きたrepoをgithubの新規リモートrepoに`push`→できない
* エラーが起きたrepoをbitbucketの新規リモートrepoに`push`→できない
* 空のrepoを新規作成してgithubの新規リモートrepoに`p

元記事を表示

Pull Request を送る方法(Backlog版)

# はじめに
新しく会社に入社する人に向けた Git および Github の勉強会をすることになったので、重要なポイントを確認するために下記の本を読みました。
その時に話をしたいと思うことをいくつかまとめたいと思い投稿することにしました。

Github については本でもまとめられていたり、他の人がまとめられていたりするので、
“Pull Request の送る方法” の Backlog 版を書きました。参考にしていただけると嬉しいです。

* Github実践入門
* https://www.amazon.co.jp/GitHub%E5%AE%9F%E8%B7%B5%E5%85%A5%E9%96%80-Pull-Request%E3%81%AB%E3%82%88%E3%82%8B%E9%96%8B%E7%99%BA%E3%81%AE%E5%A4%89%E9%9D%A9-PRESS-plus/dp/477416366X

# Pull Request
## 概要
ソフトウェア自体のバグを見つけて修正したコードを管理者に教えてあげること。
Pull Request をソフトウェ

元記事を表示

gitの基本コマンドをおさらいする

リポジトリを作ったところからマージまで。

## gitリポジトリの取得(パターンA)
“`
git clone
“`
## リモートリポジトリの確認
“`
git remote -v
“`
## ブランチ一覧の確認
“`
git branch -a
“`
## ブランチの作成
“`
git checkout -b
“`
## ブランチをリモートに登録
“`
git push -u origin
“`
## ブランチの切り替え
“`
git checkout
“`

## 変更したものを確認(ファイル)
“`
git status
“`
### 変更したものを全部戻す
“`
git checkout .
“`
## 前回のコミットとの差分を確認(内容)
“`
git diff
“`
## ファイルをインデックスにまとめて追加
“`
git add .
“`
### addの取り消し
“`
git reset HEAD
“`
## a

元記事を表示

fishでgit completionが少し固まる

結論からいうと、fish, gitの話では無くて、aliasでgitをhubのaliasにしていたからだったんだけど。

fishのcompletionで、hub用のものを入れていなかったから。
つまり、hub.fishが存在しなかったので、hub.fishを入れてあげればよかった。

cp /usr/local/share/fish/vendor_completions.d/hub.fish ~/.config/fish/completions/hub.fish

元記事を表示

OTHERカテゴリの最新記事