この前gccでコンパイルした実行ファイルを無視するために,拡張子がないファイルだけをgitの管理対象から外したいと思ってやり方を調べたのでメモする. How do I add files without dots in them (all extension-less files) to the gitignore file? にあるStackoverflowの回答によると,以下のように.gitignoreなどのファイルに記述すれば (or 変数に値を入れれば) 実現できると書いてあった. ただし,上の記述は先頭に加えないと動作しない (後勝ちなのでこのルールで前のルールが全て無効になってしまう). また,2行目は!/**/と書いてもOK. このルールは, 1行目の*で全てのファイル,ディレクトリを管理対象から外し, 2行目の!*/で全てのディレクトリを管理対象にre-includeして,
はじめに 不具合なのか調査 で、不具合を回避するには? 1. 一つ手前のバージョン(3.4.4)をダウンロードして使う 2. 過去バージョンでCloneして作ったリポジトリを3.4.5でAddして使う おわりに はじめに Sourcetreeの3.4.5をインストールして、SoucetreeからClone画面でリモートリポジトリを選択ししばらくするとSourcetreeが落ちました。。(´;ω;`) 何回やっても落ちますね・・・。 対策方法を調べたいと思います。 ※2021/10/12追記 3.4.6がリリースされているようです。 そのバージョンでCloneしてみましたが、Sourcetreeが落ちることなくCloneできることを確認しました^^ 解決しましたが、今後バージョンアップで同じような現象出た時用に記事残しておくこととしました。 ※2022/6/17追記 3.4.7で再現してるよ
ある日突然pullできなくなっていた。(would clobber existing tag) 昨日まではpull出来ていたのに突然出来なくなっていた。 コンソールにはこのように出ていました。 > git pull --tags origin from https://github.com/ * branch -> FETCH_HEAD ! [rejected] pt-release/20210309-01 -> pt-release/20210309-01 (would clobber existing tag) ん?タグが重複してる? そういえば…先日本番リリースがどうのこうのと構成管理の方が言っていたなぁと思い出しました。 原因はローカルリポジトリのタグがリモートの名前と重複していること ローカルリポジトリのタグがリモートの名前と重複していることが原因のようです。 こちらのstack
概要 Junio C Hamanoさんに興味を持って調べていると、Linusさんが書いたGitの初版は1244行ということが分かりました。Gitの初版について、軽く行数の確認とビルドチャレンジをして、あまり調べずに動かしながら機能を推測してみました。 はじめに Highlights from Git 2.39 の冒頭で登場するcommit数が一番多い方「Junio C Hamano」さんを知らなかったので調べてみました。 gihyoのインタビュー記事が面白かったです。Junio C HamanoさんはGitのメンテナで、LinusさんからGitのメンテナを引き継いだすごい方だということを知りました。 このgihyoのインタビュー記事の中で「MLで流れてきたGitのコード行数は1244行だった」というところが気になりました。調べてみると、2020年にTwitterでRui Ueyamaさんへ
gitは通常Sourcetreeを使っているのでコマンドは頻繁には使わないのですが、差分を見たいときはコマンドの方がほしい情報が取りやすいので使うことがあります。 そのときよく使うオプションだけどすぐ忘れてしまうものが2つあるので記録しておきます。 ページャーを無効にして差分を全て標準出力するオプション –no-pagerオプションを設定することで結果を全て標準出力することができます。 git --no-pager diff 比較するブランチ情報 差分があるファイルパスだけ表示するオプション –name-onlyオプションを設定することで git diff 比較するブランチ情報 --name-only
私がこれまでGitの研修講師やブランチ戦略のコンサルティングをおこなってきた経験に基づいて、この記事を書きます。 Gitのワークフローについては自転車置き場の議論になりがちであまり乗り気がしないのですが、最近少し発見があったのと、実際に多くの現場で明らかにフィットしないのに git-flow を検討したり採用したりしようとして苦労をしている様を目撃することが多いので書くことにしました。 この記事で主張する内容はタイトルの通りですが、まず前提として以下を宣言しておきます: 全てのケースに100%フィットするようなワークフローは存在しない git-flowがフィットするケースも探せばあるかもしれない 例えばすでに何年もgit-flowでうまく回せてるよ、など どのようなワークフローを採用するかは最終的にはあなた(のチーム)が判断すべき さて、 git-flow は 2010年1月「A succ
3行まとめ gitコマンドで使用するsshコマンドとそのオプションはcore.sshcommandで設定できる。 SSHエージェントに渡ったSSH鍵の情報はafssh(ssh-agent-filter)でフィルタリングできる。 core.sshcommandとafsshを組み合わせることで、SSHエージェント転送を使いつつSSH鍵を使い分けることができる。 背景 皆さん、gitとGitHub、使ってますか?(もちろん使っているからこの記事を読んでいるのでしょうが) GitHub(やGitLab)を使う時に時折困るのが「複数のアカウント」、「複数のSSH鍵」の使い分けです。 ご存じの通り、GitHubへのアクセスにはSSH、またはHTTPSを使います。 SSHは環境(例えばマシン)毎に認証情報を使い分けることができ、個別に無効化できてセキュアなため、SSHでアクセスしている方が多いかと思いま
以前調べたネタですが、ここにメモしておきます。 (最近ブログの更新が滞っていたため) gitには普通のリポジトリとbareリポジトリがあります。普通のリポジトリは、チェックアウトされたファイルを含むリポジトリで、bareリポジトリは.gitディレクトリの中身のみを含むリポジトリです。 bareリポジトリは、 % git init --bare hoge のように作ります。サーバにbareリポジトリを作って、そこにみんなでpushするような使い方は一般的でしょう。ちなみに、push先がbareリポジトリではなかったりすると、ワーニングがでたりします。 さて、例えば2つのチームがそれぞれ別々のリモートサーバを使って別のbareリポジトリにpushしていたとします。その2つのbareリポジトリを同期したいとします。bareリポジトリにはチェックアウトという概念がないので、git mergeは使え
.gitignoreの書き方と仕様を、具体例をまじえてまとめました。「あれ?うまく反映されない・・」など、gitの仕様の理解不足からくるトラブルも解決していきます。 .gitignore の基本 .gitignore とは、Git による追跡から特定のファイルを除外するための設定を書き込むファイルです。 あるGit 管理対象とししているディレクトリでも、その中のすべてのファイルを Git で管理したいとは限りませんので「Git で追跡しないファイル」を .gitignore を使って明示的に指定する事ができます。 .gitignore の仕様をおさらい まず最初に理解する必要があるのは、.gitignore の仕様です。具体的には、「.gitignore に記載された対象ファイルは、git add の実行時に、インデックスに追加されないようになる」という点だと思います。 言い換えると、.g
GitHubのブランチを削除する GitHubのブランチを削除してみましょう。まずは、テスト用にローカルリポジトリとリモートリポジトリに、test1、test2、test3というブランチを作成します。具体的には、ローカルリポジトリにtest1、test2、test3を作成してから、リモートにプッシュします。 $ git clone https://github.com/ownername/samplex.git Cloning into 'samplex'... remote: Enumerating objects: 45, done. remote: Counting objects: 100% (45/45), done. remote: Compressing objects: 100% (32/32), done. remote: Total 45 (delta 2), reus
このドキュメントではRedmineでGitを連携させる方法について記述する。 環境 OS:Debian7 Redmine version 2.3.1.stable git version 1.7.10.4 apt-getでRedmineとgitをインストールしている。 gitリポジトリの作成してSmartHTTP経由参照できるようにする。 リポジトリの作成 Webサーバからアクセスできる権限で、リポジトリを作成する。 $mkdir -p /var/git/test.git $cd /var/git/test.git $git --bare init $git update-server-info $chown -R www-data .
注1: バージョン管理システムの適切なコマンドがRedmineと同じサーバにインストールされている必要があります。 例えばRedmineからSubversionリポジトリにアクセスする場合、svnバイナリをRedmineが稼働するホストにインストールする必要があります。 注2 : バージョン管理システムのコマンドはRedmineから実行できるようパスが取っているなどしている必要があります。 以下のいずれかの方法があります。 コマンドにが置かれているディレクトリにPATHが通っている: もしコマンド名がデフォルトのものとは異なる場合は、Redmineの設定ファイルで呼び出すコマンド名を変更できます Redmineの設定ファイルでフルパスを指定することもできます。 最後に、「管理」→「設定」画面の「リポジトリ」タブ内「使用するバージョン管理システム」で、バージョン管理システムを有効にするのを忘
Windows 版 git のアップデートは、次のように簡単に行なえます。 公式サイトからダウンロード 公式サイトのトップページ右側にある “Download 2.xx.x for Windows” の部分をクリックすると自動的に最新版インストーラのダウンロードが始まります。 Git ― 公式サイト ダウンロードが完了したら、インストーラを起動して Install ボタンを押します。 新たに追加されたオプションがなければ、すぐにインストールが開始されます。 アップデート用コマンド Windows 版専用のアップデートコマンドも用意されています。 コマンドプロンプト等で次のように入力します。 > git update-git-for-windows Git for Windows 2.xx.xx.windows.x (64bit) Update 2.xx.x.windows.x is ava
Git for Windows focuses on offering a lightweight, native set of tools that bring the full feature set of the Git SCM to Windows while providing appropriate user interfaces for experienced Git users and novices alike. Git BASH Git for Windows provides a BASH emulation used to run Git from the command line. *NIX users should feel right at home, as the BASH emulation behaves just like the "git" comm
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く