開発版を試用する

注釈

git ソースコード管理システムの名前です。これは、コードに対する変更を追跡し、複数の異なる人員からの貢献を管理するために使用される。もしあなたがもっと知りたいなら git では見てみましょう Git Basics それがそうです。

もしあなたが使ったことがなければ git その前に、初めてそうするには1時間待たなければならない。これに1時間以上かかったことを発見すれば astropy forums 助けを求めています

Asterpyの開発バージョンを試用することは、3つの点で有用である。

  • より多くのユーザーが新しい機能をテストすることは、機能発表前に脆弱性を発見するのに役立つ。

  • 最新の安定バージョンのエラーは、開発バージョンで修復された可能性があります。状況がそうかどうかを知ることはあなたの間違った報告書をもっと有用にすることができる。

  • どんなコードにも貢献する前に、これらのすべてのステップを完成させる必要があります Astropy それがそうです。もしあなたが貢献するつもりなら、今練習することであなたの後の時間を節約することができます。

概要

概念上、あなたのコンピュータで最新バージョンのAsterpyのワークコピーを取得するにはいくつかのステップが必要です。

  1. GitHubであなた自身のAstropyコピーを作成します この写しを fork (口座がなければ github しかし、今すぐそこに行ってやってみましょう)。

  2. あなたのコンピュータにGitがインストールされて構成されていることを確認します

  3. Astropyの分岐をGitHubからコンピュータにコピーします これを作ると呼ばれています クローン.クローン 貯蔵庫のです。

  4. GitがどこでAstropy開発バージョンの変更を検索するかを教えてください

  5. 自分の個人作業エリアを作成します これを作ると呼ばれています 支部.支部 それがそうです。

  6. “アクティブ”Astpyの開発バージョン

  7. あなたの開発コピーをテストします

  8. 開発版を試用する

  9. “無効”開発バージョン

段階的に説明する.

GitHubであなた自身のAstropyコピーを作成します

…の言葉を使う GitHub 誰かのコードをコピーすることを作成と呼びます fork それがそうです。分岐は、コードとそのすべての修正履歴の完全なコピーである。

  1. あなたのにログインします GitHub 口座です。

  2. 転送する. Astropy GitHub トップページ。

  3. 押すんだ fork ボタン:

    ../../_images/forking_button.png

    短いポーズとOccatがタブレットスキャナで本の動画をスキャンした後、ホームページで自分のAsterpy分岐コピーを見ていることに気づくはずです。

あなたのコンピュータにGitがインストールされて構成されていることを確認します

Gitがインストールされているかどうかをチェックします:

端末に以下のコマンドを入力してチェックを行う:

$ git --version
# if git is installed, will get something like: git version 2.20.1

もし git インストールされていません get it それがそうです。

基本GIT構成:

以下の住所の説明に従って操作してください Set Up Git at GitHub 2つの基本的なプロジェクトに配慮しなければなりません

  • コピーにユーザー名とEメールを設定してください git

  • 認証を設定することで、コマンドラインからGitHubにアクセスする必要があるたびにGitHubパスワードを入力する必要がありません。のデフォルト方法 Set Up Git at GitHub 管理権限が必要かもしれません。問題があれば、身分証明書を設定してください。 using SSH keys instead

私たちはまた設定を提案します git このようにコンピュータからコピーすると GitHub コピーのみ(と呼ぶ) 支部.支部 )、あなたが処理しているAstpyはGitHubに押されます。 If Gitバージョンは1.7.11以上で、ご利用いただけます。

git config --global push.default simple

これをスキップすれば問題ではありません git 関連された状況であなたにそうすることを想起させるだろう。もしあなたのgitバージョンが1.7.11未満であれば、あなたはまだこのバージョンなしで続けることができますが、これはあなたが押し込もうとしない分岐を押し上げるかもしれないので、今後の混乱を招くかもしれません。

注釈

GitHub分岐をコンピュータにコピーするためのコマンドに影響を与えるので、設定された認証方法を必ず記録してください。

パスワードキャッシュ(デフォルトメソッド)が設定されている場合、URLは以下のようになります。 https://github.com/your-user-name/astropy.git それがそうです。

SSHキーが設定されている場合、コピーのためのURLは以下のようになります。 git@github.com:your-user-name/astropy.git それがそうです。

Astropyの分岐をGitHubからコンピュータにコピーします

次のコマンドのうちの1つが作成されます GitHub フォーク.フォーク Astropy 名前のカタログには astropy ;どのフォームを使用するかは、前のステップで設定された認証タイプに依存します:

# Use this form if you setup SSH keys...
$ git clone --recursive git@github.com:your-user-name/astropy.git
# ...otherwise use this form:
$ git clone --recursive https://github.com/your-user-name/astropy.git

この段階でエラーが発生すると,認証を設定する際にエラーとなる可能性がある.

GitがどこでAstropy開発バージョンの変更を検索するかを教えてください

現在、あなたのローカルAstpyコピーはAstpyの開発バージョンがどこにあるかわかりません。あなたのローカルコピーを最新に維持する簡単な方法はありません。はい。 git 同じリポジトリの別の場所の名前は 遠隔地. それがそうです。最新の“公式”開発バージョンを含むリポジトリは、従来から呼ばれています 上流側. Remoteですが、ここではより意味のある名前を使ってRemoteを表現します。 天体.天体 それがそうです。

交換します。 astropy 前のステップで作成したディレクトリは git 星空を知るリモコン::

cd astropy
git remote add astropy git://github.com/astropy/astropy.git

以下の内容を聞くことで、これまでのすべての設定が正しいかどうかをチェックすることができます git 既知のローカル·リポジトリのすべてのリモートを表示します Astropy 使用 git remote -v これは、以下のように表示されるべきである。

astropy   git://github.com/astropy/astropy.git (fetch)
astropy   git://github.com/astropy/astropy.git (push)
origin     git@github.com:your-user-name/astropy.git (fetch)
origin     git@github.com:your-user-name/astropy.git (push)

注意してください git リモコンがあることを知っていました 起源.起源 それはあなたのフォークです Astropy 開ける GitHub それがそうです。

起源が本当であることをより明確に説明するために your フォーク.フォーク Astropy このリモコンをあなたのと名前を変えます GitHub ユーザー名::

git remote rename origin your-user-name

自分の個人作業エリアを作成します

素晴らしいことがあります git 何よりも、あなたは本質的にあなた自身に属する個人的な作業空間で思想を符号化しようと簡単に試みることができる。 git これらの作業エリアを 分岐機構. それがそうです。

あなたのリポジトリにはすでにいくつかの分岐があります。必要であれば、以下のコマンドを実行して見ることができます。 git branch -a それがそうです。彼らのほとんどは開いています remotes/origin ;言い換えれば、それらはGitHub上でリモートコピーされたAstpy上に存在します。

特別な支店があります 師匠 それがそうです。今、それはあなたが処理しているものです;あなたはあなたの分岐リストの中で、その隣にマークがあるので、あなたは見分けることができます。 * master それがそうです。

手短に言えば、あなたは決して師匠に工夫したくありません。いつも木の枝で働いています。

将来起こりうる混乱を避けるために、今は自分の支店を作ることができます。この枝は好きなように命名することができます(貢献する際には、より意味のある名前を使用しなければなりません):

git branch my-own-astropy

あなたは? 完全ではない まだ終わっていません。Gitはこの新しい支店を知っています git branch 手に入れることができます

* master
  my-own-astropy

♪the * まだMASTERを処理していることを示しています。あなたの支店で働くためには、あなたは必要です チェックアウトする 分岐機構. my-own-astropy それがそうです。そのためには、以下の操作を実行してください。

git checkout my-own-astropy

次のような報酬を得るべきです

Switched to branch 'my-own-astropy'

“アクティブ”Astpyの開発バージョン

今あなたはAsterpyの開発バージョンを持っていますが、Pythonはそれを見ることができないでしょう。複数のバージョンのAstpyを管理するためのより複雑な方法がありますが、現在のような簡単な方法は有効です(より複雑な方法にジャンプしたい場合は、ご覧ください Python仮想環境 )。

注釈

CやCythonコードを使いたいなら Astropy これは星盤遺言のコピーを活性化する迅速な方法です not Work_--仮想python環境を直接使用する必要があります。

推奨される“アクティブ”方法を使用することが決定された場合 pip 以下の点に注意してください:インストールを試みる前に、必要な依存項目を持っているかどうかをチェックしてください:“cython”および“jinsa 2”。もしそうでなければ、それらを一緒に設置してください pip それがそうです。あるプラットフォームではpipコマンドは pip3 ではなく pip したがって、この場合は、必ず以下の例で使用してください。もしあなたが違うバージョンに何か問題があれば pip インストールされていますので、エイリアスを使って問題を解決してみてください。どれかわからなければ pip ご使用中のバージョンは、コマンドをお試しください which pip ターミナルビルにあります。

Astpyコピーが存在するディレクトリにキーを入力します:

pip install -e .

初めてそうした時、いくつかのページが出力されます;今は新鮮なコーヒーを飲むいいタイミングです。その最後に、あなたはこのような内容を見ることができるはずです。 Finished processing dependencies for astropy==3.2.dev6272 それがそうです。

起動されていることを確認するためには、以下の操作を実行してください Astpy発行版以外の他のディレクトリに切り替える Pythonでこの機能を試してみました:

>>> import astropy
>>> astropy.__version__  
'3.2.dev6272'

実際のバージョン番号は本例とは異なるが,そうであるはずである. 'dev' 名前にあります。

警告

現在、Pythonを実行するたびに、Asterpyの開発バージョンが使用されています。これはテストにはいいですが、あなたがAsterpyを開発していない限り、あなたは安定したバージョンに切り替えることを確実にしなければなりません。Asterpyを開発したいなら、開発バージョンを科学的なバージョンと分離するもっと良い方法があります。この方法は1つの virtualenv ご参照ください Python仮想環境 それがそうです。

しばらくは いつものバージョンに戻すことを忘れないでください あなたがこれを終えた時。

あなたの開発コピーをテストします

テストは星座が信頼できる反復可能な結果をもたらすことを確実にする重要な部分だ。新しい機能を試したり、エラーを発見したと思う前に、テストがシステム上で正常に動作することを確認してください。

テストを実行する前に、参照してください テスト依存項 それがそうです。

もしこのテストが そんなことしないで 成功したこと自体が間違いです report it それがそうです。

テストを実行するには、コンピュータ上のAsterpyコピーのあるディレクトリをナビゲートして、シェルプロンプトの下に入力してください。

pytest

これはまたコーヒーやお茶を飲むいいタイミングです。試験の回数が多い。テスト実行が完了すると、以下のようなメッセージが見られます。

4741 passed, 85 skipped, 11 xfailed

スキップもx失敗もいいですが、ミスや失敗があれば、どうぞ report them それがそうです。

開発版を試用する

もしあなたが次のような点でもっと貢献するためにこの過程を経験しているなら Astropy 実際にここで何もする必要はありません

もしあなたがそうした場合、bugを発見し、それがまだ開発バージョンに存在するかどうかをチェックしているので、コードを実行してみてください。

あるいは面白いためにそのうちの1つを試してみてください new features 開発バージョンにあります。

いずれにしても、あなたが一度完成したら、あなたが次の段階をすることを確実にする。

“無効”開発バージョン

あなたが帰ってAsterpyで科学の仕事をする前に、必ず開発バージョンを閉じなければなりません。

開発バージョンのローカルコピーが存在するディレクトリにナビゲートし、実行します。

pip uninstall astropy

これは開発バージョンだけを削除しなければならない。同様に、ご使用されているバージョンが正しいかどうかを必ずチェックしてください pip 必要なPython実行可能ファイルに対応します。

あなたはそれが以下のように無効になったことを確認すべきです。 Astpy発行版以外のディレクトリに変更 Pythonでこのコードを実行します:

>>> import astropy
>>> astropy.__version__  
'3.1.1'

ご覧の実際のバージョン番号は本例とは異なるかもしれませんが、そうであるべきではありません 'dev' 中にあります。