2017年4月6日木曜日

VS Visual Studio 2017 Modified

VS2017 もインストール終了し、やれやれと思っていた矢先、
すぐさま、 更新の連絡が ... 。
もう少し、のんびり構えていれば、 一回ですんだのにぃ~。
と、 溢してもしょうがないので、 何事も、 経験、経験! で、 更新。


更新と聞くと、 Windows Update を代表とする様に、
自動更新が掛かる と思っていました。
でも、 実施はユーザーに委ねられている様です。
つまり、 自ら、アクションを起こさないといけない様でして。
緊急や大改造があった暁には、また、異なるのかも知れませんが ... 。

インストールがそうであった様に、
更新も、 恐らく、 オンラインで行われるものと想像します。

個々の開発環境毎に、 必要ファイル群をオンラインで取得 が 基本 なのでしょうね。

折角、一か所に集めた 所要ファイル群 ですから、
これを最新の状態に保つ のが望ましい気がします。
その為の オフライン インストール だった訳で ... 。

では、 早速、 更新して見ましょう。

IDE 上で、アナウンスされたのは こんな 画面でした。



また、セットアップ (インストーラー) では こんな 画面でした。



件の、更新 を取得し、 最新版 へと整えます。
  未確認なのですが、 全ての IDE を閉じて、 セットアップ (インストーラー) から更新した方が良いと何処かで読んだ気がします。
  また、 ユーザー単位ではなく、コンピュータ単位で更新された気がします。.
指示に従い、 更新 ボタン を押したり、 変更 ボタン から 機能の追加 を行います。  *1.
ここで、ボタン操作をすると、対象の PC 上での更新となる筈です。  *1.
offline にデータを持っているなら、 それの取得用の .exe を再度実行し、データ更新させます。  *1.

尚、 一部の Marketplace 提供機能では、 Offline で更新しても 最新版にならないケースがあります。 *3.
Redgate SQL Search  2.3.... > 2.4.1.1284 がその例です。 *3.


序と言っては変なのですが、
ヘルプビュアー を 追加する事で、 オフラインのヘルプが使える とありましたので、
これも対応して置きましょう。

  15.0.26228.9 > 15.0.26228.10 更新
  個別コンポーネント>コードツール>ヘルプビュアー 追加 ( 18 MB )


さて、 オフラインのファイル群ですが、 20 数 GB あるので、
32 GB の USB メモリを用意して、これに、コピーして ... の手もありますが、
一旦、 コピーした後の更新では、 差分 を作って、 これを コンパクトに持ち運ぶ 事も可能ですね。
LAN 上で、賄えるなら、 こんな面倒な事はせず、 共有設定で済む お話 なのですが ... 。


差分は OS に強い味方が付いています。  Robocopy 。

そう、 指定日以降の ファイル スタンプ の もの を対象に、
差分として、ファイル抽出が可能です。
幸い、 更新したファイルは ダウンロードと配置の間に 一旦 コピー操作が入る為に、
オリジナルのファイルの タイム スタンプ ではなく、 配置(取得)時の 日付になっている様です。
これを上手に使わせて貰いましょう。

例えば、 2017/03/31 に更新を掛けたとすれば、
ファイルの LastWrite Time (更新日時) は 2017/03/31 の筈です。
この事から、 以下の Robocopy コマンドを実行します。

robocopy G:¥vs2017offline H:¥vs2017offlineDeff¥20170331 /s /Dcopy:t /maxage:20170331

オフライン フォルダ の基底が G:¥vs2017offline 、
差分格納 フォルダ の基底が H:¥vs2017offlineDeff¥yyyymmdd
とした時の コマンドラインです。

こうして作成した 差分格納 フォルダ ごと、 別環境下で、

robocopy D:¥vs2017offlineDeff¥20170331 E:¥vs2017offline /s /Dcopy:t

すれば OK です。  環境が違うので、ドライブレターが変わっている点に留意です。

もし、 差分格納に使う 記憶装置 (例: USB メモリ) の容量に余裕が無い場合には、
先の Robocopy 実施前に /L オプションを付けた上で、実行し、
プロンプト最後の 容量 表示で 確認 が可能ですね。

今回の例 ( 15.0.26228.9 > 15.0.26228.10 更新 ) では、以下の通りで、 105 MB でした。
------------------------------------------------------------------------------

                  合計     コピー済み      スキップ       不一致        失敗    Extras
   ディレクトリ:      1912      1912         0         0         0         0
     ファイル:      7569        18      7551         0         0         0
      バイト:  19.796 g  105.96 m  19.692 g         0         0         0
       時刻:   0:00:13   0:00:00                       0:00:00   0:00:13
   終了: 2017年3月31日 23:32:50

こうして、
同一ネットワーク下にない ( ... に出来ない) パソコン 間で、 Visual Studio の更新の同期を行っています。
通常は、 各ネットワークを繋いだりして、もっと、簡単に済ます事が可能なのでしょうが、
レア ケース の例 と言う事で 書き留めて置きました。

尚、 Visual Studio 2017 の更新が 15.0 から 15.1 の時の様に、 変更内容が 10 GB 近くにも及ぶ場合には、
    差分を作らずに、 大元の基底フォルダを対象にコピーした方が楽かも知れません。 *2.


付け加えれば、
ヘルプビュアー 追加 は、 その機能を追加するだけで、
実際の ヘルプ コンテンツ は、別途、ダウンロード・配置 が必要です。 
つまり、 標準状態には 含まれてはいません!。.
https://services.mtps.microsoft.com/ServiceAPI/catalogs/Dev15/ja-jP
あら、まぁ ... 。.



[2017/04/12] offline の場合の更新を追記(記述に問題がありましたね。).  *1.
[2017/04/12] 差分が 10 GB の 15.0 > 15.1 の時の更新について *2.
[2017/04/13] 差分が   6 GB の 15.1 (26403.3) > 同 (26403.7) 。
[2017/04/13] 一部機能は Offline での更新で最新化されない点を追記 *3.
[2017/05/22] 差分が   8.6 GB の 15.1 (26403.3) > 15.2 (26430.6) 。 Total 44.1 GB 。
[2017/06/01] 差分が   4.6 GB の 15.2 (26430.6)  > 15.2 (26430.12) 。 Total 48.7 GB 。
[2017/06/24] 差分が  0.5 GB の 15.2 (26430.12) > 15.2 (26430.14) 。 Total 49.2 GB 。
[2017/07/12] 差分が  0.1 GB の 15.2 (26430.14) > 15.2 (26430.15) 。 Total 49.3 GB 。
[2017/09/04] 差分が 16.2 GB の 15.2 > 15.3.3 。              Total 65.4 GB 。
[2017/10/14] 差分が 12.0 GB の 15.3.3 > 15.4.0 。 15.3.5 Pass 。   Total 77.4 GB 。
[2017/12/05] 差分が 2.6 GB の 15.4.0 > 15.4.5 。 15.4.4 Pass (11/30)   Total  80.0 GB 。
[2018/01/05] 差分が 13.9 GB の 15.4.5 > 15.5.2 。 Total  93.9 GB 。
[2018/0?/??] 差分が 約 4.9? GB の 15.5.2 > 15.8.1  Total   GB 。
[2019/01/20] 差分が 約 ? GB の 15.8.1 >15.9.5  Total  137 GB 。
[2020/02/27] 差分が 約 ? GB の 15.9.5 > 15.9.13 >15.9.20  Total  144 GB 。 含む  Scope 変更
[2020/05/16] 差分が 約 0.8 GB の 15.9.20 >15.9.23  Total  145 GB 。

0 件のコメント:

コメントを投稿