今さら聞けないGit 2020年08月19日

今さら聞けないGit 2020年08月19日

Gitエラーの解決「error: xxxxxxxxx does not point to a valid object!」

Gitで「error: xxxxxxxxx does not point to a valid object!」って怒られるときの修正方法

#### エラー例
error: C:\\\~~\.git\refs\remotes\origin\feature\master does not point to a valid object!

#### 解決
C:\\\~~\.git\refs\remotes\origin\feature\master
が壊れているらしいのでブランチの頭から_bkにする。
次回実施時に新しいものが作成されて解決。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/243523/97ed673e-fb1d-281b-15c6-abb5efdb2c85.png)

元記事を表示

Heroku デプロイ の流れと、複数のマシンから1つのHerokuサーバーにデプロイする

チーム開発を通して学んだことを少しまとめていきます。

① Herokuへデプロイするまでの基本的な流れのおさらい
② 複数のマシンから1つのHerokuサーバーに対してデプロイする
③ 開発ブランチを直接 Heroku にpushする方法
今回の内容は、この3つになります。

# Herokuへデプロイするまでの基本的な流れ
(Herokuへの登録が終わっている状態からの説明です)

### Herokuにログイン

“`:ターミナル
$ heroku login
又は
$ heroku login –interactive
“`
Herokuに登録したemailとpasswordの入力を求められます。

emailとpasswordの入力が出てこないで下記が出る場合
`heroku: Press any key to open up the browser to login or q to exit: `
適当なキーを押せばログインできます。
取り消したい場合は`q`を押します。

ログインできなかったりemailとpasswordの入力を出したい場合は`–interact

元記事を表示

gitコマンド[メモ]

##内容

– gitコマンドのメモ
 チート表とかもあるけど、とりあえず自分で使ってみたものをメモ

##前提知識
よく出てくる「origin master」と「origin/master」何が違うのかよく分からないので調べてみた。
まずこの2つをわかりやすくするには、「origin」、「master」、「origin/master」の3つに分ける。

– origin
 これは要するにリモートブランチそのもののこと。
 当然その中にはブランチがあるはずである。
– master
 という事でこれがブランチを表している。
 であるので、「origin master」とは、リモートブランチの(origin)masterブランチを指しているわけである。
– origin/master
 上記2つはリモートブランチだったが、こちらはローカルブランチ。
 リモートのmasterブランチを追跡する追跡ブランチである。

これらそれぞれが何してるか分かっとくとコマンド打つときある程度迷わなくなる?(逆に曖昧で現場で迷った経験あり笑)

##リモートの変更を

元記事を表示

初めてのpush時に出たエラーの対処法まとめ

# 今回出たエラー
1. ローカルリポジトリとリモートリポジトリとの紐づけ忘れエラー
2. rejectedエラー
3. mergeエラー

# やったこと
(★だけ追っていけばエラーを出さずにpushできるはず!)

### 1.ローカルリポジトリ作成★
“`
$ git init
“`

### 2.適当なファイルを作成★
最初にコミット&プッシュする為の適当なファイル(RubyTraining.md)を作成。

### 3.ステージングエリアにmdファイルを登録★
“`
$ git add RubyTraining.md
“`

### 4.コミット★
“`
$ git commit -m “RubyTrainingStart”
“`

### 5.プッシュ
**エラー発生。**
**原因**:リモートリポジトリとの紐づけを行わずにプッシュしてしまったため。

“`
$ git push origin master

fatal: ‘origin’ does not appear to be a git repository
fatal: Could not rea

元記事を表示

Github はじめの一歩 -Bracketsでも使えるようにしてみた-

#はじめに

これは、今までGitに触れる機会が無かった私がGitの基本を身につけるために行ったことの備忘録です。
インストールなどの画像を撮り忘れてしまい、一部は外部記事の引用となっていますが、ご了承ください。
環境は以下の通り

– OS:Windows10
– Git Ver.:2.28.0.Windows.1
– エディタ:Brackets

#手順

1. 基本的なコマンドを学ぶ
2. Gitのアカウントを作成し、リポジトリを作成する
3. Gitをインストールする(Windows10)
4. Git Bashの設定をする
5. ローカルにリポジトリを作成する
6. Gitにファイルをアップロード(push)する

##おまけ

– Brackets Gitをインストールする
– Brackets Gitの使い方
– Git BashのデフォルトエディタをBracketsに設定する

# 1.基本的なコマンドを学ぶ

Gitでは基本的にターミナルでコマンドを実行して操作します。
Git独自のコマンドのほか、基本的なファイル操作を行うコマンドラインの知識も必要です。
今回は以下

元記事を表示

Gitlab⇒Githubに移行した話

## 会社の都合で移行するぞーってなった備忘録

1 旧リポジトリのミラーリポジトリを開発用PCに作る
git clone –mirror git@gitlab_gitname tmp

2 ミラーリポジトリに入って内容物を確認
cd tmp
ls -l

3 remote originのURLを新リポジトリに向ける
git remote set-url origin git@github_gitname.git

4 新リポジトリにミラー内容をpush
git push –mirror origin

5 新リポジトリからcloneしてくる
git clone git@github_gitname.git

SSHでミラー出来ない場合はHTTPSでやるとうまくいった
SSHでミラーする場合はSSHキーを作り直すとうまくいくらしい
tmpファイルはあとでいらなくなるので消してもいい。

元記事を表示

【GitHub×AWS】Permission denied (publickey). fatal: Could not read from remote repository.でGit pushできない時の対処法

#前提条件
・AWS Cloud9(IDE)を使用
・GitHubをコードのバージョン管理として使用

#エラー内容

“`
$ git push origin master
Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.
“`

「公開鍵がないため、許可が却下されました。リモートリポジトリから読み込めません。正しいアクセス権限があるか、レポジトリが存在しているか確認して下さい。」という内容。

#原因
GitHubに公開鍵の登録がないため、アクセス権限がなく拒否をされてしまった。

#対処法
##SSH鍵の作成
1.下記コマンドを入力。`your_email@example.com`はGitHubで登録しているメールアドレスに置き換える。

“`
$ ssh-keygen -t rsa -b 4096 -C “you

元記事を表示

怖くないよ、Git と GitHub

## 前書き
Git にビビり散らかしていた昔の自分向け

## Git てなんだ
語弊を恐れずに言うならファイルのタイムマシン。
例えばプログラムを書いていて、間違った時に(ctrl or cmd)+zで戻したり、やっぱり戻したのを進めなおしたりすると思う。それのファイル版。

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

## addしてコミットしてプッシュしてふぁるすがるしでぱーじがこくーん
コマンドが多くて混乱することもあると思うが、一度覚えてしまえば気にならなくなる。
一旦落ち着いてメモをとるべし。もし先輩に教えてもらったメモがあるなら、そのメモと比較しながら内容を反芻できるななおグッド

add
`git add ファイル名` と使う
エイリアス(コマンドのショートカット)を切っている場合は別のコマンドを教わっているかもしれない。ga とか。
その場合は作業ディレクトリの .gitconfig か、 ~/.gitconfig を開いてみるとエイリアスが乗っている。

このコマンドは、変更したファイルをコミット対象にするコマンド
コミットしたのに変更が反映

元記事を表示

GitHubにSSH接続する方法(秘密鍵、公開鍵の作成)

GitHubにSSH接続していないと、pushした際、以下のようなエラーになると思います。

“`
$ git push origin master
git@github.com: Permission denied (publickey).
“`

なので今回は、GitHubにSSH接続する方法をご紹介いたします。

# 秘密鍵と公開鍵を作成する
秘密鍵、公開鍵というのは、公開鍵暗号方式で使われる2種類のデータのことです。
簡単に言えば、公開鍵が鍵穴、秘密鍵が鍵のようなものです。
秘密鍵は自分で保持し、公開鍵はGitHubに送ります。

まずは、この2つの鍵を作成します。

以下のコマンドで、鍵を保存するフォルダに移動します。

“`
$ cd ~/.ssh
“`

以下のコマンドで、鍵を生成します。

“`
$ ssh-keygen -t rsa
“`

以下の表示がでるので、Enterを押します。

“`
Generating public/private rsa key pair.
Enter file in which to save the key (/Use

元記事を表示

githubの初期設定

##内容
– macでgithubを使うための初期設定

##目的
– 忘れないようにメモ
– アウトプットすることで頭の整理
– 間違ってる箇所もあるかもしれないので都度編集します

##gitとgithubとは
– gitとは
 「分散バージョン管理システム」のこと。
 チームで開発等をするときに、複数人が同じファイルを同時に変更した場合コンフリクトが起きる。
 じゃあ各々が編集したいファイルをコピーして編集、その後それぞれの変更点だけ元のファイルに反映出来たら最高じゃん、的なことが出来る管理ツール。
 リモートリポジトリ(上でいうところの元ファイルのありか)と、ローカルディレクトリ(上でいうところの各々でコピーしてきたところ)で管理する。
 リモートリポジトリが本物でローカルリポジトリがコピーみたいなイメージ。

– githubとは
 gitの使用を支援するよというサービス。
 リモートリポジトリをクラウド上に作成できるので、遠く離れていても管理が可能。
 他にもいろいろあるが割愛。

##1.macにgitをインストール

“`terminal
#ユーザー名、メ

元記事を表示

.gitignoreのテンプレートが欲しい時に参照するサイトの紹介

# 記事の要約

`.gitignore` のテンプレートが欲しい時

– [github/gitignore (GitHub)](https://github.com/github/gitignore) を参照する
– [gitignore.io](https://www.toptal.com/developers/gitignore) で生成する

### この記事に書いてあること

– `.gitignore`のテンプレートをまとめているサイトの紹介

### この記事に書いてないこと

– `Git`や`.gitignore`とは何か
– `.gitignore`の書き方、設定方法

# きっかけ

先日、慣れない環境で開発する機会があり、
「一時ファイルがたくさんある。.gitignoreには何を書けばよいのだろう?」
と悩んだことがありました。

ここでは、その際に知った便利なサイトを紹介します。

# github/gitignore

![scr1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.c

元記事を表示

GitHubでソースコードを公開する為のGitとGitHubでの基本操作の流れ

## この記事を読むとわかること
Git/GitHubを使い始めてまだ日が浅い初心者で、例えば月1回など、頻繁に使わない場合、使い方の流れを忘れてしまいます。
Git/GitHubを使う為の初期設定は済んでいるが、リポジトリを作って〜公開までの一連の動作を体でまだ覚えていない場合のレファレンスに適しています。全体の操作の流れを掴む事ができます。

## 前提条件
OSバージョン: macOS Mojave Version 10.14.6
homebrewがインストール済みであること
gitバージョン: 2.27.0

## 参考: 全体の操作の流れの確認
久しぶりの操作の前に、以下を眺めて全体の操作フローを思い出すのに活用できます。
以下はGit/GitHubを使い始める為の設定・操作方法の初心者向けの説明です。動画・記事両方とも内容は同じです。

[Lesson Supplement Getting Started With Git and Github](https://youtu.be/tMDbJ0DDuug)
10分5秒から通常の操作の説明に入ります。

[Getting S

元記事を表示

Git&GitHub学習まとめ

# Git用語
## 場所の名称
|用語|意味|
|:–|:–|
|ワークツリー|編集を行う場所|
|ステージングエリア|コミットするファイルを登録する場所|
|Gitディレクトリ|コミットを格納する場所|
|ローカルリポジトリ|自分専用のリポジトリ|
|リモートリポジトリ|共同で使うリモートリポジトリ|

## 状態
|用語|意味|
|:–|:–|
|untracked|Gitの管理外(新規作成されたばかりのファイル等)|
|unmodified|変更されていない|
|modified|変更済み|
|staged|ステージングエリアに登録済み|
|コンフリクト(競合)|変更の衝突が起こっている|

# コマンド関連
## パス
|表すもの|記号|
|:–|:–|
|カレントディレクトリ|.|
|ホームディレクトリ|~|
|ルートディレクトリ|/|

## 通常コマンド
|コマンド|動き|
|:–|:–|
|pwd|カレントディレクトリの絶対パスが表示される|
|mkdir ディレクトリパス|指定したディレクトリを作成|
|ls|現在のディレクトリの内容を表示|
|ls

元記事を表示

【Git】現場で初心者が覚えるべきGitコマンド

##はじめに
 2020年3月に、私はITエンジニアへ転職しました。現場で、gitを用いてシステムバージョンが管理されています。
 私はインタネットでgitを調べると、コマンドがたくさんあります。([Git ドキュメント 日本語版](https://git-scm.com/book/ja/v2))
 どこまでわかれば現場で働けるかという不安がありました。
 私みたい**初心者**に対しては、逆引きでコマンド調べ、使うのは一般だと思います。
 でも、仕事の効率良くなるために、gitの基本コマンドを覚えるべきです。
 下記のコマンドが分かれば、仕事がなんとかできると思います。

##Git基本コマンド
 開発担当により、使われるコマンドは違います。
 プログラマーである私はよく使うgitコマンドを下記にまとめました。

|コマンド|意味|
|:–|–:|
|git branch|ブランチ一覧|
|git branch ブランチ名|ブランチ作成|
|git checkout|ブランチの移動|
|git checkout -b|リモートブランチに紐づ、け新しいローカルブランチを作成、チェッ

元記事を表示

git add . と git add -A と git add -u の違いはなんぞや?

# gitとは?
gitとは、プログラムソースなどの変更履歴を管理する分散型のバージョン管理システムのことです。

# git add
git add は指定したファイルをインデックスに登録してコミット対象にするコマンドのことです。

“`git:ターミナル
$ git add ファイル名

#例
$ git add index.html
“`

ファイル名には、*を使ったワイルドカードによる指定もできます。

“`git:ターミナル
$ git add *.rb #カレントディレクトリの全ての.rbファイルをadd
“`

# git add -u と git add -A と git add.
git add にオプションを追加することによってまとめてコミット対象にすることができます。

###git add -u
“`git:ターミナル
$ git add -u
“`
git add -u は**バージョン管理されていて、変更があった全てのファイル(変更されたファイル、削除されたファイル)**がaddされます。
※バージョン管理されていないファイルや新しく作

元記事を表示

【Github】とりあえずcommitしているけど、戻り方がわからない『お寿司職人』のあなたへ

# ご挨拶と記事の概要
タイトルはネタです。~~お寿司だけに。~~

現在実務1年目のWebエンジニアです。
よろしくお願いします。

今回は、**git/githubを用いて過去のCommitに戻る方法**を出来るだけわかりやすく、簡単に『お寿司を作る工程』を例にしてお伝えしたいと思います。

間違っている点、こうしたほうがいい点などは随時ご指摘ください。

## 記事の対象者
– gitを使った簡単なバージョン管理、githubへコードのpush等ができる方
– Githubを使っているが、過去のCommitに戻す方法がわからない方
– Commitの戻し方は分かるが、実際怖くてやっていない方
– 戻し方の記事をたくさん読んだが、結局よく分からなかった方 ←私です。

## 読むと出来るようになること
今回は抜け漏れ

元記事を表示

nginx で表示するページを git で更新する

# nginx で表示するページを git で更新する

## 1. ベアレポジトリを作る

“`
$ mkdir ~/hoge.git
$ cd ~/hoge.git
$ git –bare init –shared
“`

## 2. レポジトリをクローンする

“`
$ cd
$ git clone ~/hoge.git
“`

## 3. push されたときに変更を適用する

“`
$ vim ~/hoge.git/hooks/post-receive
“`

“`bash:post-reseive
#!/bin/sh
git –git-dir=.git pull
“`

“`
$ chmod +x ~/hoge.git/hooks/post-recive
“`

## 4. nginx のコンフィグを適当にいじる

“`
$ vim /etc/nginx/sites.enabled/hoge.conf
“`

“`conf:hoge.conf
server {
listen 8080;
server_name 192.168.111.11

元記事を表示

開発に使う主なgitコマンドと使い道

# はじめに

共同開発をする機会がありましたので、その際に調べたものをまとめておきます。内容は目次に記載されている通りです。

# 開発用のリポジトリを用意する

手順は以下の通りです。

1. Githubでリポジトリを作成
2. 任意の開発用ディレクトリにクローン

Githubでリポジトリを作成後、具体的には

“`
cd (任意のディレクトリ)
git clone https://github.com/(githubアカウント名)/(githubで作成したリポジトリ名).git
“`
のようにします。

これは、Githubの該当のリポジトリの`Code`と書かれている緑色のボタンを押せば出てくるので、それをコピペするだけです。

![green_button.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/393870/0815c400-e3df-71e6-2ca4-3f932c867a06.png)

![git_clone.png](https://qiita-image-store

元記事を表示

git stash関連のコマンド(備忘録)

ブランチを切り替えるのを忘れてしまったり、`git pull`するのを忘れてしまったりと、
気をつけていてもやらかしてしまうことありますよね。

そんなときの強い味方、`git stash`のコマンドの備忘録です。

# コードを退避する

“`
git stash

Saved working directory and index state WIP on master: ….
“`

# 一覧を見る

“`
git stash list

stash@{0}: WIP on master: 8af0e2a Merge branch ….
stash@{1}: WIP on master: c8743b8 Merge branch ….
stash@{2}: WIP on master: 49a6d3c Merge branch ….
“`

# stashを適用する(stashを適用後、残す場合)

“`
git stash apply stash@{n}
“`

# stashを適用する(stashを適用後、削除する場合)

“`
git sta

元記事を表示

cherry-pickコマンドでコミットを書き換えよう

ソースコードをマージするために、方法が多いです。こちらは普通がmerge、rebaseで利用していますが、もう一つ方法を紹介したいと思います。

仮にmasterやdevはブランチがある。今回、devのコミットからmasterブランチにマージしていきます。

既にmasterブランチのコミット

“`
devブランチを作成する前
commit●
devブランチを作成する後
commit❺
“`

既にdevブランチのコミット

“`
commit❶
commit❷
commit❸
commit❹
“`

● 一つコミットをcherry-pickしたい

“`
git cherry-pick {コミットID}
“`

● 複数の連続したコミットをcherry-pickしたい

“`
git cherry-pick {始点となるコミットの1つ前のコミットハッシュ}..{終点となるコミットハッシュ}
“`

例1:
・masterブランチにcommit❶をcherry-pickしたい場合

“`
・git cherry-pick commit❶
・コンフリクトが発生する場合

元記事を表示

OTHERカテゴリの最新記事