mike-neckのブログ

Java or Groovy or Swift or Golang

syobochim/gistにプルリクを送った結果wwwwwwwwwwwww

これはしょぼちむAdvent Calendar 2014の6日目です。なお、いろいろと忘れっぽいので12/5の時点で公開しています。

昨日はこざけさん記事でした。 明日はしげっとさんです。


しょぼちむといえば、伝説とまでなった、JJUG CCC 2014 FallでのLTですが、そんな彼女のLT用にいろいろとやっていたレポジトリーをみると、

_人人人人人人人人人人人人人人人人_
> build.gradleがいけてない <
 ̄YYYYYYYYYYYYYYYY ̄

という感じだったので、修正してプルリクを送ってみました。

build.gradleをいい感じに修正したよ by mike-neck · Pull Request #1 · syobochim/gist · GitHub

すぐにマージされました╭( ・ㅂ・)و ̑̑ グッ !

修正したところ

修正したのは次の部分です

  • *.imlだけレポジトリーに入っていたので除外した
  • *.ipr*.iml*.iwsout/を.gitignoreに追加した
  • build.gradlesourceCompatibility = 1.8しか指定されていなかったので、ちゃんとtargetCompatibilityも設定して、ついでにIDEAでもgradle ideaタスクを実行した時にJDK1.8が指定されるようにした
  • コンパイルエンコーディングutf-8と明記した
  • gradle ideaタスクで出力される*.iprファイルでIDEAがプロジェクトをgit管理できるようにした
  • gradle ideaタスクで出力される*.iprファイルにgradleプロジェクトであると認識させるようにした
  • gradle ideaタスクで出力される*.iprファイルに成果物の出力先をout/であると認識させるようにした

と、至って大したことをやったわけではありません。

ついでなので

ついでといっては、あれですが…

コミットした時に、しょぼちむにメンションが飛ぶようにgitフックをgroovyで書きました。

こんな感じです。

$ cat post-commit 
#!/usr/bin/env groovy

@Grab('org.twitter4j:twitter4j-core:4.0.2')

import twitter4j.*
import twitter4j.conf.*

def logArgs = ['max-count':'1', 'pretty':'format:%h %s']

def log = logArgs.inject(['git','log']){cmd, k, v ->
    cmd << "--$k=$v"
}.execute().text

def msg = "@syobochim $log https://github.com/syobochim/gist"

def builder = new ConfigurationBuilder()
builder.setDebugEnabled(false)
    .setOAuthConsumerKey('*******************************')
    .setOAuthConsumerSecret('******************************************************')
    .setOAuthAccessToken('****************************************************************')
    .setOAuthAccessTokenSecret('******************************************************')

def twitter = new TwitterFactory(builder.build()).getInstance()
twitter.updateStatus(msg)

コミットしたら、早速ふぁぼられましたwwwwwwwwwwww

以上