All posts

Draft Pull Requestをリリースしました

素晴らしいアイディアやコードが形になる準備ができたらすぐに、コラボレーターとの会話をスタートするPull Requestを開ける機能があれば良い、とGitHubでは常に思っていました。結果的にPull Requestをクローズすることになったとしても、またはコード全体をリファクタリングすることになってしまったとしても、Pull Requestはコードそのものと同じくらい重要なコラボレーションの要素なのです。 一方で、コードの完成度はまだ高くないけれど、コラボレーションをスタートするための会話としてPull Requestを使用したいと思ったことはないでしょうか?例えば、ハッカソンのプロジェクトでは、このような場面が想定できます。マージするためではなく、他のメンバーにローカルで確認してフィードバックをもらいたい場合、あるいはディスカッションを開始するために、コードを記載しないでPull Requestを開く場合もあります。 作業中のプロジェクトをタグ付けする Draft Pull Requestの機能を使用することで、コーディング中で未完成なものにもわかりやすくタグ付けすることができます。この機能追加により、[Create Pull Request]ボタンをクリックしてドロップダウンを表示させ、この機能を設定することで、作業中であるというタグ付けできます。 Draft Pull Requestでタグ付けされたPull Requestはそのコーディングが、まだドラフト状態であることが明確にわかるようになっており、マージすることはできません。マージするための準備ができたら、Pull Requestボタンの下近くにあるステータスを[Ready for review]に変更してドラフトの状態を削除し、プロジェクトの設定に従ってマージできるようにします。また、リポジトリにCODEOWNERSファイルがある場合、Draft Pull Requestはレビューの準備ができている状態としてマークされるまでは、レビューアへの通知を行いません。 さっそく、使ってみましょう Draft Pull Requestは、パブリックおよびオープンソースリポジトリのコード、そしてGitHub TeamとEnterprise Cloudのプライベートリポジトリで利用できます。 Draft Pull Requestについての詳細はこちら

Image of admin

Octoverse 2018 (2018年10月時点の統計情報) ー 機械学習

2018年10月のOctoverseレポートでは、GitHubで機械学習とデータサイエンスが話題になりました。tensorflow/tensorflowは最もコントリビューションが多かったプロジェクトでした。また、pytorch/pytorchは最も急成長しているプロジェクト、そしてPythonはGitHubで3番目に人気のある言語でした。 GitHubでの機械学習とデータサイエンスの状態をもう少し詳しくみてみましょう。 本調査は2018年1月1日から2018年12月31日までの間に行われた、コードのプッシュ、IssueまたはPull Request、IssueまたはPull Requestに関するコメント、またはPull Requestのレビューなどのコントリビューションが行われたプロジェクトのデータをもとに調査しています。最もインポートされたパッケージのデータを調査するにあたっては、ディペンデンシーグラフのデータを使用しました。これらデータには、すべてのパブリックリポジトリと、ディペンデンシーグラフにオプトインしたプライベートリポジトリが含まれます。 プログラミング言語 私たちは“ machine-learning”というトピックでタグ付けされたリポジトリを調べ、それらリポジトリで最も使われているプログラミング言語をランク付けしました。 Pythonは機械学習リポジトリの中で最も利用されている言語であり、GitHub全体で3番目に利用されている言語です。とは言え、すべての機械学習がPythonで書かれているわけではありません。C++、JavaScript、Java、C#、Shell、TypeScriptなどもGitHubの上位10言語でよく使われている言語であり、これら言語は機械学習プロジェクトでも上位10言語に入っています。Julia、R、Scalaは機械学習プロジェクトでトップ10に入っていますが、GitHub全体ではそれほど使われている言語ではありません。 JuliaとRはどちらもデータサイエンティストによってよく使用されている言語であり、ScalaはApache Sparkのようなビッグデータシステム構築時によく使われるようになりつつある言語です。 上位の機械学習およびデータサイエンスパッケージ ディペンデンシーグラフのデータから、機械学習プロジェクトまたはデータサイエンスに関するプロジェクトで、Pythonのパッケージをインポートするものの割合を計測しました。上記のリストは上位10位に入るパッケージのリストです。他にも、以下のことがわかりました。 Numpy(多次元データに対する数学的操作をサポートするパッケージ)は、最もインポートされたパッケージで、ほぼ75%の機械学習およびデータサイエンスプロジェクトで使用されています。 科学計算用のパッケージであるScipy、データセットを管理するためのパッケージであるpandas、および視覚化ライブラリであるmatplotlibはすべて、機械学習およびデータサイエンスプロジェクトの40%以上で使用されています。 Scikit-learnは、多数の機械学習アルゴリズムの実装が含まれており、機械学習プロジェクトの40%近くで使用されています。 ニューラルネットを扱うためのパッケージであるTensorFlowは、25%ものパッケージで使用されています。 他に上位10位に入っているのはユーティリティパッケージです。six はPython 2と3の互換性ライブラリで、python-dateutilとpytzは日付を扱うためのパッケージです。 上位機械学習プロジェクト また、2018年に「machine-learning」というラベルの付いたオープンソースプロジェクトで、最もコントリビューションが多いものを調べました。TensorFlowは最も人気があり、2番めに人気のプロジェクトであるscikit-learnの5倍のコントリビュータがいます。explosion/spaCyとRasaHQ/rasa_nluという2つのプロジェクトは、自然言語処理の問題に焦点を当てています。CMU-Perceptual-Computing-Lab / openpose、thtrieu / darkflow、ageitgey / face_recognition、tesseract-ocr / tesseractの4つのプロジェクトは、画像処理に焦点を当てています。 Julia言語のソースコードも、2018年にコントリビューションが多かったプロジェクトの1つでした。 GitHubでホストされている機械学習プロジェクトは、Exploreに一覧としてまとめてありますので、これからも、機械学習を使用して素晴らしいプロジェクトを作ってください。

Image of Thomas

GitHub Enterprise新機能リリース

GitHubが提供するコードレビューにおけるコラボレーションやビッグデータが実現するセキュリティ機能を活用することで、あらゆる規模のチームが最高の製品を開発し、リリースすることができます。先日リリースされたGitHub Enterprise新プランを利用することで、企業は自社ホスティングおよびクラウドでの利用が可能になり、よりフレキシブルな環境でGitHubを利用できます。新プランでは、GitHub Enterpriseを1シート購入することでEnterprise CloudとEnterprise Serverの両方のインスタンスにアクセスできるようになりました。 今回リリースするEnterprise Server 2.16では、開発者が時間を節約し、チームおよびチームのリポジトリ管理を簡素化するのに役立つ新機能が実装されました。最新バージョンのEnterprise Serverを入手して、これらの新機能をご利用ください。 Enterprise Server 2.16をダウンロードする GitHub Enterpriseに関するお問い合わせ デベロッパーエクスペリエンスの改善 本リリースにより、開発者はさらにコラボレーションを進め、より生産的な開発作業ができる機能を提供します。 Forceプッシュのタイムライン表示 Forceプッシュは、決して推奨されるものではありませんが、広く採用されているワークフローの1つであり、RebaseやSquashマージを取り入れている一部のプロジェクトや組織では必須になっていることもあります。Forceプッシュのイベントをタイムラインに含めることで、プロジェクトメンテナーは他の共同作業者の作業追跡をサポートします。 Issueテンプレート自動化の改善   1プロジェクトにつき複数のテンプレートを作成する際に、これまでの機能に加え、デフォルトのタイトル、ラベル、担当者のアサインなどを自動的に追加できるようになりました。 Issueテンプレート自動化について詳細を見る 古くなったコメントに対する改善 古くなったコードに対し、レビューを自動で折り畳むのをやめ、代わりに直近のコード変更に対して古くなってしまっていることを示すようになりました。コラボレータは、レビューコメントのきっかけとなったコード行が変更になった際にそれが古くなってしまったことが分かるようになります。 Pull Requestのレビュー依頼が行われると、マージボタンが自動的にアップデート Pull Requestのレビューをサブミットすると、そのサブミットに対するレビュー結果次第で、マージボタンが自動でアップデートされるようになりました。この改善により、サイトをリフレッシュする必要がなくなりました。 リポジトリ作成画面でオーナー選択ドロップダウンをハイライト リポジトリ作成画面で、オーナーを選択するドロップダウンが最初にハイライトされるようになりました。これにより、リポジトリを作成する際には、オーナーの選択をまず最初にに考えるようになります。こうすることで、リポジトリを作成するユーザーが、誤ったオーナーの元で作成してしまい、あとで所有権を変更するといったトラブルを防ぐことができます。 リポジトリの管理を改善 複数のOrganizationの一元管理や詳細な権限管理が容易になり、それら状況の可視性が向上しました。 リポジトリ作成の管理 GitHub Enterpriseの管理者やOrganizationのオーナーは、リポジトリの作成に対して制限を加えたいと思うことが頻繁にあります。今回のバージョンアップにより、ユーザのそのようなポリシーを設定することが可能になりました。ユーザに対してリポジトリを作成できるかどうか、Privateのみ許可するか否か、といった権限設定を行うことができます。これはインスタンスレベルにおいてもOrganizationレベルにおいても設定可能です。

Image of admin

GitHub Desktop 1.6 をリリースしました

GitHubは、GitHub Desktop 1.6をリリースしました。本リリースでは、オンボーディング、次のステップとして何をすべきかの提案、そしてファイルサイズの制限などの新機能や改良が搭載されています。 GitHub Desktop 1.6のリリースでは、作業が終わった後に「次に何をすべきか」というプロセスに関する疑問がわかりやすくガイドされており、これにより迅速に自分が書いたコードをチームメートとシェアすることが可能になります。さらに、オンボーディングに関するガイダンスと、ワークフローのどのポイントにいるかに応じて、次に何をすべきかの提案をする機能も実装されました。

Image of githubjapan
View more posts