「Git」の版間の差分

提供: sha.ngri.la
移動先: 案内検索
(エラー)
(エラー)
 
(同じ利用者による、間の1版が非表示)
68行目: 68行目:
 
$ git rm -f foo.html
 
$ git rm -f foo.html
 
</pre>
 
</pre>
 +
*[http://www.omakase.org/misc/gitignore.html gitで管理しないファイルを無視させる .gitignore|misc|@OMAKASE]
  
 
==エラー==
 
==エラー==
80行目: 81行目:
 
*[http://stackoverflow.com/questions/14161297/git-error-fatal-unable-to-stat-no-such-file-or-directory github - Git error fatal: unable to stat '*': No such file or directory - Stack Overflow]
 
*[http://stackoverflow.com/questions/14161297/git-error-fatal-unable-to-stat-no-such-file-or-directory github - Git error fatal: unable to stat '*': No such file or directory - Stack Overflow]
 
*[http://tnakamura.hatenablog.com/entry/20090504/1241398150 Git でローカルの変更を元に戻す - present]
 
*[http://tnakamura.hatenablog.com/entry/20090504/1241398150 Git でローカルの変更を元に戻す - present]
 +
==fatal: the remote end hung up unexpectedly==
 +
<pre>
 +
client_loop: send disconnect: Broken pipe
 +
send-pack: unexpected disconnect while reading sideband packet
 +
fatal: the remote end hung up unexpectedly
 +
</pre>
 +
のとき
 +
<code>git gc --aggressive</code>
 +
で解決した。
 
[[Category:Git]]
 
[[Category:Git]]

2021年9月11日 (土) 07:56時点における最新版

単体で使うとき

  1. 最初に使うとき
    $ git init
    $ git add .
    $ git commit -a -m "message"
    
  2. 2回目以降
    $ git add .
    $ git commit -a -m "message"
    

共有リポジトリ

サーバ側の準備

$ mkdir fooo.git
$ cd fooo.git
$ git init --bare --shared=true

他のサイトを見ると"$ sudo git init --bare --shared=true"と書いてあるけど、私の場合sudo使わないとうまくいった。なんでだろう?

ローカル側の準備

$ git init
$ git remote add origin ssh://username@sha.ngri.la/home/username/fooo.git 
$ git add .
$ git commit -a -m "initial import"
$ git push origin master
  • git remote add origin のときにサーバでのusernameを入れておかないとローカルのユーザ名で認証しようとするのでログインできなかった。

他のマシンの準備

$ mkdir fooo
$ cd fooo
$ git init
$ git remote add origin ssh://username@sha.ngri.la/home/username/fooo.git 
$ git add .
$ git commit -a -m "initial import"
$ git pull origin master

Link

ローカルの変更を元に戻す

特定のファイルを戻すとき

$ git checkout ファイル名

全て元に戻すとき

$ git checkout .

link

.gitignore

git add .で登録してしまったファイルを、.gitignoreに書いても同期されてしまう。このときは、

$ git rm --cached -f config/database.yml

ファイルも削除してしまいたい場合は、

$ git rm -f foo.html

エラー

fatal: unable to stat 'filename': No such file or directory

ファイルを削除した後にgit add .したときにエラーが出たので、その対応。

$ git rm "path/to/filename"
$ git add .
$ git commit -am 'my commit'

link

fatal: the remote end hung up unexpectedly

client_loop: send disconnect: Broken pipe
send-pack: unexpected disconnect while reading sideband packet
fatal: the remote end hung up unexpectedly

のとき git gc --aggressive で解決した。