あるブランチにコミットしていって、「あ、やっぱりこのコミットハッシュの時点のソースをいじくりたいなあ」と思うときがあると思います。 そのままチェックアウトすると無名ブランチに迷い込んでしまうのでブランチ名を指定してチェックアウトします。 コミットハッシュの一部を指定して feature/some-function というブランチを作成する例です。 特定のコミットをチェックアウト
![Git で特定のコミットからブランチを切りたい(作成したい) - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/33453ab8f1ce19f0131e086ba820095a4f1f564a/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9R2l0JTIwJUUzJTgxJUE3JUU3JTg5JUI5JUU1JUFFJTlBJUUzJTgxJUFFJUUzJTgyJUIzJUUzJTgzJTlGJUUzJTgzJTgzJUUzJTgzJTg4JUUzJTgxJThCJUUzJTgyJTg5JUUzJTgzJTk2JUUzJTgzJUE5JUUzJTgzJUIzJUUzJTgzJTgxJUUzJTgyJTkyJUU1JTg4JTg3JUUzJTgyJThBJUUzJTgxJTlGJUUzJTgxJTg0JUVGJUJDJTg4JUU0JUJEJTlDJUU2JTg4JTkwJUUzJTgxJTk3JUUzJTgxJTlGJUUzJTgxJTg0JUVGJUJDJTg5JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz04ZWNhYzUzMjg0N2UyODAxMzgxOTY4ODQwMjY0NjQ2MQ%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwd25vZ3VjaGkmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPTM1ZDYyZTIwNzU0NDc5Mzc3YTAzYjE3YTdhN2QzODJj%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3Ddee932edc7271aa7c7bbd30b98246dbb)
はじめに 某記事で、 implicitsなんて呼ばないで、各機能ごとに適切な名称で呼ぼう。あと、重要なのは型クラスだからそれだけ注意すればOK、という趣旨のことを書きましたが、どうやって使えばいいかは投げっぱなしだったのでその導入編だけでも書こうかと思います。この記事での目的は簡単で、 Scalaのコレクションのsumメソッド(とproductメソッド)を自作の有理数クラスに適用できるようにしよう ということになります。実際のところ、sumメソッドを整数リストに対して呼び出す、たとえば でも、型クラスを「使って」はいるのですが、実際に型クラスに新しいインスタンスを追加していないので、使った実感がわかないと思います。そこで、有理数クラスです。実装が比較的簡単である上に、四則演算への対応が容易という点でこれを選ぶことにしました。 まずは、有理数クラス(Rational)の実装です。ここは、本題
このドキュメントの目的 自分は趣味でFlowをずっと使っていて、またプロダクションでも今まで3プロジェクトほどにFlowを導入した。その知見。 「Flow は便利そうだけど、怖い」「いれてみたら色々ハマったからクソ」「わからん、なにもかも…」という人に対し、自分がいままで出くわしたパターンや、聞かれた疑問について、メジャーな解法を提示する。 なぜFlowを導入するか Babel から段階的に導入することが出来る React の JSX にも推論を入れることができる 部分的に適用できる ASTがES準拠であり、ESLintなどがツールが使える(TSは独自AST) それ自身ランタイムに全く影響はないので落とすのも簡単 実際にはReactと一緒に使うのが、エコシステムもユースケースも揃っていて、一番効果を発揮するだろう。それか、小さい npm モジュールを自分で書くとき。 型のメリット/デメリッ
本稿は 2016年10月13日 (木) に Tim Abbott 氏によって書かれた記事の翻訳です。 Static types in Python, oh my(py)! https://news.ycombinator.com/item?id=12703008 免責事項/Disclaimer 本稿は 非公式 の翻訳記事です (著者の Tim Abbott 氏に翻訳を公開することの確認は取っています) 。本稿の内容に関して Tim Abbott 氏と Dropbox 社は一切の責任を負いません。 誤訳などありましたら私宛に編集リクエストを送って頂けると助かります。 謝辞 @takada-at に誤訳の指摘をコメントで頂きました @shimizukawa から誤訳修正の編集リクエストを頂きました @cocoatomo は全体を通して誤訳修正、より分りやすい日本語の表現にしてくれました 私の拙
先日koherが投稿した記事が多く読まれたようです。記事の内容は僕とkoherが普段話してきた内容が多く登場しているため、僕が人々に伝えたい内容とも強く合致しています。しかし残念な事にインターネットの反応を見ていると、誤解しているケースが思ったより多くありました。 そこで、ネットで見られた意見に対して返答を書きました。 特定の実在する意見は指さずに、僕が感じ取った文脈を編集したものを対象にします。それによって、「そんな事言われてないじゃないか」と思うものがあれば、僕としてもそのほうが嬉しいのでそれで問題ないです。 「たしかにそうだ」と思ってnull安全に今一度興味をもってもらえれば嬉しいです。 なお、記事中のコードは特に言及が無ければswiftです。 意見: null安全があっても、ちゃんとやるのを忘れているかもしれないのでは 忘れません。ちゃんとやらないと、コンパイルが通らないからです。
Ruby開発者のMatz(まつもとゆきひろ)さんが、こう語られています。 今までは、仕事は会社から与えられるもので、面白い仕事が当たればラッキーだけどそうじゃない場合もあったわけです。ところが、オープンソースの活動で自分の名前が表に出れば、今までとは違って「武器」を手に入れることができる (オープンソースへの取り組みはエンジニアにとって強力な「武器」になる より) いつかはやってみたいOSS開発。 とはいえ、OSS開発参加って別次元のギークたちの世界だろうと思っていました。 しかし、どうやらそんなこともないようで、素晴らしいコミッターの方々のメンタリングの元、僕のgithubアカウントがこうなりました。 ...おわかりだろうか。 !!!! ruby系の超大型OSS二つにcontributeして、githubが少々派手になりました。(が、最後まで読んでいただければ、これ自体は意外と簡単なんだ
Qiitaのいいねをすごーい!に変えるChrome拡張を作りました! コメントも変わってる!ふしぎー ふしぎー これで変わるんだって。ふしぎー .LikeButton > .p-button::after { content: "すごーい!"; } .LikeButton > .p-button > span:not(.fa) { display: none; } .itemsShowHeaderStock_statusList > li:first-child > .itemsShowHeaderStock_countText::after{ content: "すごーい!"; font-size: 12px; } .itemsShowHeaderStock_statusList > li:first-child > .itemsShowHeaderStock_countText{ fo
春ですね!人の配置がリファクタリングされ、コードもリファクタリングの季節です。 では僕がここでモダンなJavaScriptとES2015の利点を語る役をやるので、みなさんはチームを説得する役をやってください。 JavaScriptの歴史 まず最初にJavaScriptの歴史を踏まえることで、今学ぶべきものとその理由を確認しましょう。 なぜ2016年の記事でES2016ではなく、ES2015なのか、と疑問に思った方もいるかもしれません。それは、ES2015がただの年次アップデートではなく、これから始まる毎年のメジャーバージョンアップの起点となるバージョンであり、またES5から飛躍的に仕様が増えたバージョンであるからです。 簡単に(雑な)歴史を紹介します。 ブレンダン・アイクによってNetScapeに実装/搭載された古の時代〜IE6 (1996~2005) ES3: 一時はシェア7割を誇ったレ
JavaScriptはなぜトレンドが毎年変わると思われていたのか JavaScriptのエンジニャーは口を開くたびに出てくるツール名が違う、いつも環境設定をしている、みたいな話をよく聞きます。実際、それを揶揄するようなエントリーが人気だったりします。 とはいえ、JavaScriptを実際に使い込んでいる人は別にそんなに大きな変化だと思っていない節があって、台風は外周部ほど風速が速い、みたいな印象を感じます。 カンブリア紀のJavaScript ウェブサイトをパカパカ動かすための言語でした。DHTMLです。FireBugが出る前のJavaScriptを開発していた人類は、念力デバッグを駆使していました。あるいはalert()。 三畳紀のJavaScript prototype.js、jQuery、Closure Compiler、YUI、mochikit、Ext.jsなどの時代。JavaSc
SpreadSheetSQL ======================================== 現在既にこのライブラリはメンテナンスしていません。 Apache License 2.0で公開しているため、そのライセンスの範囲内で利用してください。 ======================================== GoogleAppsScript で GoogleSpreadSheets をDBとして扱う際に 取得、変更、削除に手間がかかっていたので、SQLっぽく記述できるライブラリを作りました。 Github: https://github.com/roana0229/spreadsheets-sql Document: https://script.google.com/macros/library/d/17p1ghyOkbWOhdE4bdBFhOXL07
base64とは base64という言葉を聞いたことがあるでしょうか?? base64とは、64進数を意味する言葉で、すべてのデータをアルファベット(a~z, A~z)と数字(0~9)、一部の記号(+,/)の64文字で表すエンコード方式です ただ、データ長を揃えるためにパディングとして末尾に記号の=を使用するので、厳密にはbase64は、65文字の英数字から表現されます (URLや正規表現のなかでbase64を用いると一部の記号(+,/)は特別な意味を持つことがあるので-や_などが用いられることがあります) なぜbase64をつかうの?? かつての電子メールを送るためのプロトコルSMTPでは、ASCIIといわれる7bitで表現される英数字しか送ることができませんでした したがって、メールを使って画像や音声などのデータをやりとりしたいと思った時に、英数字しか対応していないSMTPでは、それら
元記事: Awesome Java Awesome List in Qiita Awesome Ruby Awesome JavaScript Awesome Node.js Awesome Python Awesome Go Awesome Selenium Awesome Appium Bean マッピング Bean マッピングを容易にするフレームワーク dOOv - 型安全なドメインモデルの検証とマッピングのための API を提供します. アノテーション, コード生成, および型安全 DSL を使用して, Bean の検証とマッピングを迅速かつ簡単にします. Dozer - アノテーション, API または XML 設定を使用して, あるオブジェクトから別のオブジェクトへデータをコピーするマッパー. JMapper - 高速コードマッピングのためにバイトコード操作を使用. アノテーシ
Pythonの特殊メソッドを使ってPPAPをやってみました。 文字列の足し算、掛け算を__add__、__mul__を使ってやりました。 コード import re ## PPAP class class PPAP(str): def __add__(self, other): self.print_materials(other) result = "{1}-{0}".format(self, other) print("Oh, {0}!".format(result)) return PPAP(result) def __mul__(self, other): match = re.search("(\w+)-(\w+)", other) mate_1, mate_2 = match.group(1), match.group(2) result = "{0}-{1}-{2}".for
はじめに コマンドラインツールが多数作られるプロジェクトがあるとします。 複数人で開発していると、オプションの意味付けが人によってばらばらになってしまう――そんな事象は、おそらくよくあることだと思います。 ので、そのような環境では、なんらか規約を設けるのがよさそうです。 本記事では、その規約の作成、またはオプションの意味付けにおいて、参考となるであろう情報を提示します。 特に、ショートオプション(英字1字のみのオプション)にフォーカスします。 ロングオプション(英字複数字から成るオプション)については、意味は自明になることが多いでしょう。 ただし、「ショートオプションをどのロングオプションに対応付けるべきか」という問題は、本稿でも扱います。 また、コマンド文法やオプションのフォーマットはOSやプログラムによって異なりますが、ここでは以下を前提とします: ショートオプション ... -a,
はじめに GoogleさんがShellスタイルガイドを共有していたので、いくつか気になった点をピックアップしました。 自分のShellスタイルはかなり我流なので、自省の意味も込めてコメントも併記します。 Googleスタイルガイドの元ネタ (Python/C++/Java/Rとかだけでなくdocumentガイドなど色々あります) https://github.com/google/styleguide Shellスタイルガイド (今回はこちら) http://google.github.io/styleguide/shell.xml 本当は人間がチェックするのではなくcpplintのためXML定義なのかもですが、気にしない気にしない。 (見たところcpplintはc++だけだと思ってます) commitフックでshell系のlint走らせろっていうのが今風なのかもしれませんが、キニシナイキ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く