Skip to content

Instantly share code, notes, and snippets.

@ntk1000
Last active August 29, 2015 14:10
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ntk1000/9423d11743682bb02746 to your computer and use it in GitHub Desktop.
Save ntk1000/9423d11743682bb02746 to your computer and use it in GitHub Desktop.
how to setup development environment on windows

how to setup development environment on windows


このgistはstfuawsc_itg advent1日目の記事です


ちなみにstfuawscとか書いてますが、4letterwordsな激しい意味合いは持っていなくて


エンジニアとして必要な心構えかなという思いでつけてます


四の五の言う前に、コード書いたりライブラリに触れたり


まず手を動かして、とりあえず動かす・動くものを作ってみる


エンジニア版 論より証拠 ぐらいのつもりで


エントリ受付中です-> stfuawsc_itg advent

よろしくお願いします


はじめに


入社9年目、PCは8台目


基本的にはリースが2-3年の契約になっていることを考えると、消費しすぎな状態


( ^ω^ )  どうしてこうなった!?


内訳

  • 故障(ThinkpadT43時代)
  • 故障(↑が交換直後に使えなくなる)
  • Windows7に先行して切替
  • 故障(完全に起動しなくなり、メールその他過去の遺産が全て消える)

...


とにかく、 環境構築の機会に恵まれたので 色々効率化できる方法をその都度試してきました


以下、2014年度版の構築手順です


cmder

まずcmderのfullバージョン(msysgitつきのもの)を持ってくる


これはなに

  • かっこいいコンソール
  • Conemu + clink + msysgitを使いやすくまとめたもの

なぜ使うのか

  • Windows標準のコンソールが進化しないため
  • ssh使ってlinuxにつなぎたい
  • (時々使わざるを得ない)Powershellも一緒に使いたい
  • タブがある
  • 管理者権限つき実行が楽
  • cygwinに抵抗がある
  • 透ける
  • 背景画像設定できる
  • アイコンがλ
  • vim

tips


日本語関連

  • Main -> Font -> Monospace -> チェック外しておく

alias

  • aliasコマンドで設定できる ex. alias ls=ls --color $*
  • 内部的にはdoskeyコマンドになっている?設定内容は/config/aliasに記載されている
  • 自分のaliasは↓


e.=explorer .
gl=git log --oneline --all --graph --decorate  $*
ls=ls --color $*
pwd=cd
find=%CMDER_ROOT%\vendor\msysgit\bin\find.exe $*
which=where $*


  • find | grepするときにwindows標準のfindが認識されてしまったのでmsys内のfindに置き換えた
  • whereをwhichとして設定した
  • 引数は$*をつければ渡される(つまりコマンド系は全部つけた方がよさそう)

問題点

  • 時々反応悪い
  • 時々文字化けする

時々使いづらさを感じることがありますが、8割方cmder上で作業できてます


chocolatey

サイトに記載されたワンライナーを実行すれば本体がインストールされる


これはなに

  • パッケージ管理システム
  • nugetが使われている

なぜ使うのか

  • 2014年になっても各サイトからダウンロード巡礼するのは辛い
  • macにおけるhomebrew、linuxにおけるyum, apt-get が羨ましい
  • 出来るだけインストールするものはミニマムにしたいし、グローバルなフォルダを汚染したくない

tips


  • choco hogehoge あるいはその短縮版コマンドで操作する
  • chocolateyのコマンドは全て管理者権限付きのpowershellで行うこと
  • 前述のcmderもパッケージにあるが、cmderの環境は持ち運びしたいので別にした

欲しいパッケージがあるか確認

C:\> choco list [PackageName]
C:\> choco search [PackageName]

C:\> cinst [PackageName]

C:\> cup [PackageName]

C:\> cuninst [PackageName]

installed package

インストール済みパッケージの確認

C:\> choco list -lo

あるいは

C:\> choco search -lo

packages.config

パッケージの情報をxmlにまとめて操作することもできる


こんなxmlを用意しておいて


<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="apackage" />
  <package id="anotherPackage" version="1.1" />
  <package id="chocolateytestpackage" version="0.1" source="somelocation" />
</packages>


こうする

C:\> cinst packages.config

問題点

  • uninstall周りがちょっとうまくいかないことがある

メジャーなツールは大体対応してるので助かってます

逆にこのパッケージに入ってないツールはもう使わないという決めもありかと


visual studio


これはふつうにMSDN経由で入れた

chocolateyにもあるけどライセンス周りがよくわからなかったのでやめておいた

関係ないけどnuget便利

visualstudiocommunityと.NetのOSS化で、また変化があるかも


おわりに


やっぱりCMD.exeなんとかして欲しい


次はaphlysiaさんです

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment