Git 15©2ch.net

レス数が900を超えています。1000を超えると表示できなくなるよ。
2017/02/05(日) 05:22:15.65ID:AxwpDksc0
ソースコード管理を行う分散型バージョン管理システム、Gitについて語ろう。

Git - Fast Version Control System
http://git-scm.com/

◆関連サイト
Pro Git - Table of Contents
http://git-scm.com/book/ja
Git入門
http://www8.atwiki.jp/git_jp/

◆前スレ
Git 13
http://echo.2ch.net/test/read.cgi/tech/1439563364/
Git 14
http://echo.2ch.net/test/read.cgi/tech/1457412803/
VIPQ2_EXTDAT: default:vvv:1000:512:----: EXT was configured
2017/05/21(日) 17:49:40.11ID:kNbVpIPT0
>>812
誤解されるような書き方をするほうが悪い
2017/05/21(日) 18:53:55.05ID:99kOcSi/0
>>812
ですよね
2017/05/21(日) 19:06:11.58ID:lI2AjJAk0
1日頑張ったけど解決しなかった。
わっかんねー。

>>811
Git for Windowsを許可しても、TCP9418を許可してもダメでした。
816デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/05/22(月) 00:24:29.43ID:rn8iG5MY0
unpack failed: unpack-objects abnormal exit
でググったが分からんな
817デフォルトの名無しさん (エーイモ)
垢版 |
2017/05/25(木) 09:56:57.92ID:gJtqScyhE
.gitignore
task.php
password.txt

これら3つのファイルのみ管理したいんですが
initial commitしてから2回目以降からはpassword.txtの変更をgit add -Aとかでaddされたりコミットしないようにしたいんですけど
どうしたらいいのでしょうか?
毎回git add task.php .gitignoreみたいに手打ちするのが面倒くさいです
818デフォルトの名無しさん (JP)
垢版 |
2017/05/25(木) 10:02:49.20ID:nE79I92lH
.gitignoreに
*して
例外に
task.php
password.txt
入れろ
819デフォルトの名無しさん (エーイモ)
垢版 |
2017/05/25(木) 13:55:40.88ID:gJtqScyhE
.gitignoreの内容をこうするんですか
*
!task.php
!password.txt

でもこうするとpassword.txtを編集した時にpassword.txtもステージングされてしまいコミット対象になってしまいます
2017/05/25(木) 14:26:06.55ID:CXNFHBlU0
.gitignoreに
password.txt
でいいんじゃないの
821デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/05/26(金) 02:46:41.58ID:eV7JVPOs0
>>817
ググりゃすぐ出てくるじゃん

https://stackoverflow.com/questions/936249/how-to-stop-tracking-and-ignore-changes-to-a-file-in-git


試してみたやつ
https://paiza.io/projects/0_6etRTmQWfQIyqckR-FfQ
2017/05/26(金) 06:00:42.82ID:OOmYkqkra
>>817
git update-index --assume-unchanged [filepath]
2017/06/02(金) 22:36:06.11ID:WKcoaBZy0
週末に自宅でプログラミングしていくつかコミット作った後で、
月曜日に会社に出社してからコミットの日付を月曜日の時間に変えたいんですがどうしたらいいですか
2017/06/02(金) 22:47:08.27ID:hTWL2ZhC0
>>823
rebase
2017/06/02(金) 23:03:12.07ID:WKcoaBZy0
rebaseしてみましたが、sourcetreeだと、日時とコミットした...の二つが表示されていて、
日時の方に最初にコミットした時間が残っていますね。。
2017/06/02(金) 23:09:14.20ID:hAX4yYWb0
http://qiita.com/itochan/items/c89a1a9b5bd073217537
この辺の話かね?
827デフォルトの名無しさん (ブーイモ)
垢版 |
2017/06/02(金) 23:11:37.47ID:md2uAZGeM
rebase --ignore-date
828デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/06/02(金) 23:31:48.02ID:ehtIP3uB0
うーん
2017/06/02(金) 23:51:32.96ID:WKcoaBZy0
コマンドじゃなくてsourcetreeで簡単にできないんすかね
2017/06/02(金) 23:55:25.15ID:xUiVlsMK0
出社してからコミットすれば?
2017/06/03(土) 01:59:29.57ID:yxu/fCGK0
週末に作ったコミットと同じ内容のコミットを手作業でコーディングしていって新しくコミット作るしかないんでしょうか
2017/06/03(土) 02:27:51.58ID:Uw5Qf9Wo0
環境がよくわからないのだけれど、別のディレクトリにgit cloneして、週末に作業した分で上書きしちゃえば良くない?
そもそも作業日時を偽装すんなって話だが
2017/06/03(土) 02:57:18.13ID:cXJEfJKU0
家からは別ブランチにプッシュしといて出社してから家でやったコミットをmasterにチェリーピックすればいいのでは
2017/06/03(土) 04:39:47.50ID:/kqtS8wt0
cherry-pick もオプション無しだと元のコミットの AuthorDate を引き継ぐね
コマンドラインからなら -n 指定してそのあとコミットすれば更新されると思うけど
それなら rebase --ignore-date HEAD^ で書き換えたほうが早い
2017/06/03(土) 07:39:06.64ID:M21V1RL00
>>831-832で思ったけど、戻りたいところまでgit reset --softで戻ってaddしてコミットし直しが一番簡単かな?
SourceTreeだけでもできるし
2017/06/03(土) 10:15:19.84ID:sCohk93mH
git rebase -i HEAD~
pick->edit
vi README.md
git add README.md
git commit --amend
git rebase --continue
2017/06/03(土) 12:12:01.42ID:yxu/fCGK0
会社のソースコードを持ち出して自宅で作業してるってバレたら嫌じゃないっすか
2017/06/03(土) 12:35:54.10ID:3br47TQ30
コミットログを改竄しないといけないなんて大変ですね
2017/06/05(月) 10:54:12.94ID:W5i+gg3V0
まさに社畜の鏡
840デフォルトの名無しさん (オッペケ)
垢版 |
2017/06/05(月) 12:21:13.89ID:zngCdN7ur
もはや何の為のソース管理なのか分からんようになっとるなw
2017/06/05(月) 13:38:52.60ID:1bSPHptQ0
gitで管理されていないソースセットがあるとします。
それをgitに取り込んでV1というタグを打ちます。
その後修正して完成します。これをV2とします。
V1とV2の差分をpatch形式で出すには
どういう方法をとると楽ですか?
2017/06/05(月) 14:30:26.22ID:yTD0hQm/H
diff
2017/06/05(月) 14:37:11.85ID:W5i+gg3V0
format-patch
2017/06/05(月) 15:13:47.30ID:1bSPHptQ0
なるほどありがとう。
一長一短感がありますが、いろいろ試してみます。
845デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/06/06(火) 23:15:50.80ID:3B7gGeju0
v2.13.1
846デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/06/07(水) 01:47:24.44ID:MW2os+Jx0
ヒカル TV出演「年間5億は稼ぐ勢いですね」
https://www.youtube.com/watch?v=G7qL6ftpets
第1回案件王ランキング!YouTuberで1番稼いでるのは誰だ!
https://www.youtube.com/watch?v=asF2wQ2xhjY&;t=61s
ユーチューバーの儲けのカラクリを徹底検証!
https://www.youtube.com/watch?v=FUSb4erJSXE&;t=504s
【給料公開】チャンネル登録者4万人突破記念!YouTuberの月収公開!
https://www.youtube.com/watch?v=Y7DAQ0RKilM&;t=326s
誰も言わないなら俺がYouTuberのギャラ相場を教えます
https://www.youtube.com/watch?v=E4q-vaQh2EQ&;t=118s
YouTuberになりたいのは馬鹿じゃない!YouTuberになる方法
https://www.youtube.com/watch?v=Fr0WXXZRMSQ

最高月収5000万円だとさ。年収じゃなくて「月収」な
おまえらもyoutubeに動画投稿したほうがいいぞ。副業にぴったしだ
やろうと思えばスマホがあればできるぞ
最低2年はやらないとここまではいかないだろうけど才能とアイデアと
企画力と継続力があればが大儲けできる可能性がなくもない
まだまだ他の職種に比べれば競争率は低いからオススメ
顔出したくないならラファエルみたいに仮面つければいい
ハロウィン用でいろいろな仮装マスク売ってるからオヌヌメ
2017/06/07(水) 12:56:26.43ID:0g6Bbo5s0
>>846
グロ
2017/06/10(土) 02:15:10.16ID:7CPx4yEU0
githubでマージされずにクローズされたプルリクを削除したいんですが、どうやったらいいでしょうか
2017/06/10(土) 10:39:35.71ID:PQJA5zwZ0
うちのプロジェクトにもそんなのあるわ
勝手にissue作って自己解決でcloseしやがった
スレ汚し
2017/06/10(土) 14:01:46.70ID:TJyr+hnH0
>>849
普通の使い方じゃん
2017/06/10(土) 18:00:00.37ID:xirQfrrS0
>>848
方法がないっぽいけど、あったら誰か教えて。
2017/06/10(土) 18:07:06.38ID:6wIt3W1Cd
>>849
そんなことで文句言われる方がかわいそう
2017/06/10(土) 18:22:37.76ID:Pg73dp6X0
間違ったcommitを消しちゃうかどうかって議論と通じるものがあるな。
2017/06/10(土) 18:32:00.64ID:TJyr+hnH0
>>853
作業履歴であれば残しておくべきだし、
アプリのバージョン履歴であればリリースしてないものは不要
855デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/06/10(土) 19:22:05.87ID:yLLSprfl0
push -f
856デフォルトの名無しさん (アウアウイー)
垢版 |
2017/06/15(木) 16:04:06.84ID:jiI/lDMda
わかばちゃんと学ぶGit使い方入門

を読んでいます。

コンフリクトの定義は何でしょうか?

上の本では、同じ行に同時に別々の修正が加えられたときに発生すると
書かれています。

オリジナルのファイル:
1 A
2 B

Xさんがオリジナルのファイルを以下のように修正。
1 A
2
3 B

Yさんがオリジナルのファイルを以下のように修正。
1 A
2 B
3 C

この場合 2行目および3行目が異なるため、コンフリクトが発生したことになるのでしょうか?

新しいファイルを以下のように更新すれば問題ないようにも思えます。

1 A
2 B
3 C
857デフォルトの名無しさん (アウアウイー)
垢版 |
2017/06/15(木) 16:06:05.81ID:jiI/lDMda
というか、

同じ行に同時に別々の修正が加えられたときにコンフリクトが発生すると
したら、同時に複数人が同じ内容のファイルを修正なんてほぼ不可能で
あるように思えます。

ですので、コンフリクトの定義は、もっと柔軟なのではないかと思うのですが。
858デフォルトの名無しさん (アウアウイー)
垢版 |
2017/06/15(木) 16:07:51.46ID:jiI/lDMda
1 A
2 B

上のファイルをXさんが

1 A
2 C
3 B

と変更。

Yさんが、

1 A
2 B
3 D

と変更。

うーん。不可能なように思えます。
2017/06/15(木) 16:32:34.15ID:Gc/Ioh5uH
A
B

A
C
という変更と

A
D
という変更だよ
2017/06/15(木) 17:40:53.17ID:Emed4SrA0
>>856
(1)
1 A
2 B
3 C
なら、ダメ

Xの保存が先なら、Yは、この状態を取得し直して、
1 A
2
3 B

1 A
2
3 B
4 C
となるはず

とにかく、(1)には出来ないので、後の人は、やり直し。または、
1 A
2 B
まで戻して、Yが(1)の状態にして保存。
次に、Xが(1)を取得して、それを変更する
2017/06/15(木) 20:17:20.11ID:IguO0RCP0
>>857
3行のサンプルで考えたらそうだけど、実際ソースコードの変更をする場合は同じ行に同時に別々の修正が加えられることはあまりないと思うんだけども。
あるとしたら大抵はそもそも複数人での作業の段取り自体がまずいケースなんじゃないかな。
2017/06/17(土) 09:44:58.99ID:xCLPFkGR0
Gitはバージョン2.13でセキュリティとUIの改善を続けている
https://www.infoq.com/jp/news/2017/06/git-2-13-released
863デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/06/17(土) 22:50:57.80ID:8wOx4ll30
gitがタイムスタンプを更新してくれたおかげで
どのファイルをアップロードすればいいのか分からなくなった
2017/06/17(土) 23:02:35.18ID:hpXZLyYV0
違うやつだけアップロードすれば良いのでは?
2017/06/17(土) 23:06:11.16ID:T9UjZgk00
更新されたファイル全部アップロードして問題があるならそれはgit以前の問題のような。
866デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/06/18(日) 15:12:44.87ID:xPH4G83l0
>>863-864
ある種のdeployツールとは相性悪いかもね
2017/06/18(日) 15:34:08.72ID:5/hisFs/0
makeはタイムスタンプが更新されたソースをビルド対象にすればいいし、デプロイも同じような
ものだと思うんだが。
「ある種のdeployツール」ってどんなのを想定しているんだろう。
2017/06/18(日) 15:50:38.61ID:HTlYPuIB0
自分がタイムスタンプ更新したくせにgitのせいと言い張る
2017/06/18(日) 17:01:02.62ID:DuPi1FAb0
すいません。教えて下さい。
Windows 10のHyper-VにCentOS7を入れて、git 2.13.1とgit-lfs 2.1.1をインストールして、Smart HTTPを設定しました。
Git Bash (Windows 10 )から、git cloneやpushができるところまできたのですが、
リポジトリにgit lfs install、git lfs track、バイナリファイルを追加してpushすると、以下のメッセージが出ます。
batch response: Repository or object not found: http://[CentOS ip]/git/lfstest.git/info/lfs/objects/batch
Check that it exists and that you have proper sccess to it
何が原因考えられるでしょうか?
よろしくお願いします。
870デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/06/18(日) 18:30:07.87ID:xPH4G83l0
URLが間違ってる
2017/06/18(日) 18:53:27.11ID:MTpI4Hm10
タイムスタンプ問題再炎か
2017/06/18(日) 20:56:46.20ID:dLIsPmeH0
    〃〃∩  _, ,_
     ⊂⌒( `Д´) < またタイムスタンプの話の相手してくれよ
       `ヽ_つ ⊂ノ     ひまなんだよ
              ジタバタ
873デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/06/18(日) 21:02:56.93ID:ZkAshefq0
タイムスタンプ復元機能は元々は将来的にgitに導入する予定だったけど
あまりにもクソクソうるさいタイムスタンプ厨にキレたリーナスが絶対に入れないと決めた
2017/06/18(日) 21:07:08.92ID:dLIsPmeH0
gitがタイムスタンプを復元機能してくれたおかげで
どのファイルをアップロードすればいいのか分からなくなった
2017/06/18(日) 22:13:03.73ID:o43mtcr60
make, maven, gradle などは、ファイルAが更新されていたら、
Aに依存している、ファイルBも更新・再コンパイルされる

それが、gitに反映されるから、おかしく感じる

Aしか更新していないのに、何で、Bも更新されているのか?
2017/06/18(日) 22:14:11.08ID:MnZf8dSY0
なんでBをgitで管理しているのか?
2017/06/18(日) 22:27:54.66ID:1y+XaoN70
>>875-876
普通はバージョン管理するソースファイルとビルドで動更新されるファイルを区別して
後者は.gitignoreに登録してバージョン管理しないようにする
でもVisualStudioとかの糞は今だにこの二つの情報がひとつのファイルに共存してたりして、管理が難しかったりするけどね
そのためにgit update-indexとか使わねばならない
2017/06/18(日) 22:37:13.79ID:kR72fjI40
>>877
例えばどういう場合?
2017/06/18(日) 23:18:26.79ID:Z/NgCr9C0
>>877
そんな経験ないな
2017/06/18(日) 23:22:34.60ID:5/hisFs/0
config.hをリポジトリに入れるかどうかってのと同レベルの話と想像。
2017/06/19(月) 00:00:49.66ID:ydqJ52nG0
>>878-879
C#のResources.Designer.cs
2017/06/19(月) 00:09:56.98ID:l1liGy+g0
>>881
それは自動生成されるんだから
入れる必要ないでしょ
2017/06/19(月) 00:26:07.87ID:ydqJ52nG0
>>882
消すとビルドできなくなるぞ
2017/06/19(月) 00:34:30.67ID:DAk9M+nE0
>>881
それのバージョン管理、何が難しいのさ
2017/06/19(月) 00:36:29.07ID:l1liGy+g0
>>883
消さなくていいだろ?
リポジトリ管理しなければいいだけ
886デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/06/19(月) 00:41:18.55ID:ydqJ52nG0
>>884
自分で編集したときにはコミットする必要がある
でも他人が編集した場合、その変更をpullしてきた後ビルドすると何故ファイルの内容が変更されてしまう
その変更はコミットすべきじゃない
2017/06/19(月) 00:43:55.21ID:ydqJ52nG0
>>885
消すとビルドできなくなるってことは自動生成できないってことだろ?
そのファイルをリポジトリ管理しないと、cloneしたときに消した状態になるんだからビルドできないじゃん
2017/06/19(月) 00:46:42.26ID:ydqJ52nG0
普通にこの件でググると
https://stackoverflow.com/questions/22619935/resource-designer-cs-under-git

Resource.Designer.cs.in 作って手動コピーしろとか、
git update-index --assume-unchanged しろとでてくるんだが、
これ間違いなの?
2017/06/19(月) 01:40:16.97ID:id7ENE8z0
>>888
読んだけど本質的にバージョン管理しないのと何が違うの?
2017/06/19(月) 01:44:13.34ID:ydqJ52nG0
>>889
バージョン管理されてないと、cloneしてビルドができない
2017/06/19(月) 02:01:36.57ID:x8a1b5290
タイムスタンプの件は
gitの使用を強制されているのでなければ他のツールを使うことを勧めたいところだが
そういうことに適した他のツールを知らないので何一つ勧めることができず申し訳ない
2017/06/19(月) 02:15:49.66ID:l1liGy+g0
FTPでソースコードをサーバーにアップロードしました。
今までは日付が新しいものだけアップロードしていればよかったんです。

でもあるとき古いバージョンに戻したいと言われました。
どうすればいいでしょうか!

gitにタイムスタンプが保存されていれば
こんなこと悩まなくて住んだのに・・・
893デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/06/19(月) 02:23:17.21ID:ydqJ52nG0
>>892
古いバージョンのブランチをcheckoutして
日付の新しくなったファイルをアップロードすればいい
2017/06/19(月) 02:24:05.75ID:l1liGy+g0
という話に持っていくにはどうすればいいっすかね?

gitにタイムスタンプが保存されていれば
問題が解決するというロジックが思いつかんのですよ。



普通に考えればgitでチェックアウトしても内容が変わらければ
日付は変わらないし、変わってしまったとしても、新しいとか古いとか関係なく
変わったものだけアップロードすればいいだけですし
2017/06/19(月) 02:26:48.82ID:l1liGy+g0
>>893
あ、さーせんw
こんな時間にこんなに早くレスくると思ってなかったっす
トイレ言ってる間に書き込まれたけど、>>894が本当に言いたかったことっすw
2017/06/19(月) 02:28:47.94ID:l1liGy+g0
>>893
> 古いバージョンのブランチをcheckoutして
> 日付の新しくなったファイルをアップロードすればいい

gitにタイムスタンプを入れたら、古い日付になるじゃないですか!
2017/06/19(月) 08:25:52.14ID:7LnfDu+V0
>>886>>887
csprojに適切な設定(デフォルト)がされていればビルド時に生成されるはず。
生成されたファイルには「手で編集すんな」って注意書きがある。

>>888
Xamarinの人は自動生成できないからResources.designer.csをリポジトリに入れたら困った。
って話じゃないの?Xamarin知らんから想像だけど。
2017/06/19(月) 08:46:19.74ID:u8cwYNdeM
>>897
なるほどXamarineの場合にだめなのか
C#はXamarineしかやってないから勘違いしてた
糞なのはXamarineなのな
2017/06/19(月) 10:14:31.35ID:JRZAs/i8H
糞は君の頭
2017/06/19(月) 12:31:08.49ID:V5gnmXfCa
結局gitは何も問題ないわけだ、良かった良かった
901デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/06/20(火) 01:46:41.40ID:oes7eN320
MSも csproj とかはわりとマージしやすくなってちょっと Git フレンドリーになったと思ったけど
Xamarinの Resources.designer.cs はダメだな
レイアウト変更で直接 Resources.designer.cs を編集するんじゃなくて
別のxmlファイルでも編集するようにして
ビルド時にそれから Resources.designer.cs を生成してくれるようになれば管理しやすくなるのだが
2017/06/20(火) 13:48:31.96ID:hObYdPLN0
gitでメタ情報の差分を見る方法を教えてください

パーミッションが違うっぽいんだけど、どう違うかがわかりません
ファイルの内容は同一です
2017/06/20(火) 14:25:27.11ID:vjCd9jWud
>>902
$ git diff HEAD^1
diff --git a/hoge b/hoge
old mode 100644
new mode 100755
904デフォルトの名無しさん (JP)
垢版 |
2017/06/23(金) 09:03:17.22ID:0OdP20aKH
要するにメルカリで情報流出させるようなDeployしてるのか君らは
905デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/06/24(土) 08:27:16.03ID:oLp/Ttnr0
特定の拡張子を除いてpullする方法、もしくは特定の拡張子だけpullする方法はありますか?
.dbや.logファイルで毎回コンフリクトが起こるので、.dbや.logを除いてpullしたいです
2017/06/24(土) 10:03:48.87ID:UpDuIKwad
じゃあそのファイルのgitの管理やめたら?
2017/06/24(土) 10:17:54.53ID:FQBQr+eL0
自分用のgitignoreに*.db,*.logを登録する
2017/06/24(土) 10:58:42.82ID:vXvpJXbj0
git configをプロジェクトによって使い分ける
http://qiita.com/htanjo/items/51245c08327a31da73f4
2017/06/24(土) 12:36:28.25ID:TM1thEne0
すでにレポジトリ管理化にあるファイルはgitignoreに入れても意味ないんやで
なので git update-index なんてものがある
http://qiita.com/usamik26/items/56d0d3ba7a1300625f92
910デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/06/25(日) 17:31:17.74ID:oOuEb/or0
v2.13.2
911デフォルトの名無しさん (エーイモ)
垢版 |
2017/06/29(木) 15:35:16.72ID:clVopv39E
何で中途半端にワッチョイしてんだよ
次スレからIDも表示させようぜ
2017/06/29(木) 15:52:24.75ID:IiRS3qfEd
ホスト名も出そうよ
2017/06/30(金) 18:42:19.87ID:w0LdmmL80
gitlabのmerge requestをsource treeでダウンロードしたいんですがどうしたらいいですか
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況