zip은 표준을 지키기 때문에 분할 압축 기능을 지원하지 않는다.

그러나 7zip은 압축도 좋고 분할 압축이 가능하다.



mac OS에서 brew를 통해 7zip을 다운받는다.



$ brew update


$ brew install p7zip



zip -9 (압축률 최고) 보다 7zip이 더 압축률이 좋다. 



압축 / 해지 방법


$ 7z a rating.zip rating.csv


$ 7z x rating.zip



500메가 텍스트 파일을 압축할 때,

zip으로 압축하면 130메가 짜리 압축 파일을..

7zip으로 압축하면 80메가 짜리 찹축 파일을 생성한다.




압축 파일을 용량 단위로 분할 압축할 수 있다. 단점은 하나의 파일로 압축하는 것보다 용량이 더 커질 수 있다는 단점이 있다. 




예)


$ 7z a ratings.zip ratings.csv -v50m


-rw-r--r--    1 samuel.kim  staff   52428800 10 18 19:43 ratings.zip.001

-rw-r--r--    1 samuel.kim  staff   52428800 10 18 19:43 ratings.zip.002

-rw-r--r--    1 samuel.kim  staff    2845551 10 18 19:43 ratings.zip.003




Posted by '김용환'
,


검색버튼을 눌러 powershell을 찾는다.


powershell을 바로 실행하지 않고 powershell 아이콘 위에서 오른쪽 마우스 클릭하고  



"Run as Administrator"을 실행한다.

Posted by '김용환'
,




commit/push한 local repository를 하나 뒤로 돌려서 수정하고 다시 commit/push할 때 유용하다.



$ git reset HEAD^  


코드 작업 


$ git add


$ git commit -m "이전 이름 커밋 메시지"



강제 리버트하고. 기존 히스토리 안남게 한다.


$ git push origin +master 


Posted by '김용환'
,


grafana 웹에서 버전을 확인하고 싶다면..


datasources 메뉴의 맨 마지막 라인을 버전을 확인할 수 있다. 앗.. 불편..








Posted by '김용환'
,


테스크 코드를 실행할 때 자바/스칼라 메모리가 부족할 수 있다.


sbt의 경우에는 아래와 같이 사용할 수 있다.


javaOptions ++= Seq("-Xms512M", "-Xmx2048M", "-XX:MaxPermSize=2048M", "-XX:+CMSClassUnloadingEnabled")




메이븐(maven)의 경우는 3가지 방식으로 사용할 수 있다 .(아래 참조)
https://maven.apache.org/configure.html


주로는 다음과 같은 방식을 사용한다.

export MAVEN_OPTS="-Xms512M -Xmx32048M"











Posted by '김용환'
,



기존 로컬 브랜치를 리모트를 새로운 브랜치로 생성하고 푸시된 기존 브랜치는 삭제하는 예이다. 




$ git branch -m features/bug_fix GOOGLE-539_bug_fix



$ git push --set-upstream origin GOOGLE-539_bug_fix

Total 0 (delta 0), reused 0 (delta 0)

To https://github.com/samuel-kim/google-search.git

 * [new branch]      GOOGLE-539_bug_fix -> GOOGLE-539_bug_fix

Branch GOOGLE-539_bug_fixset up to track remote branch GOOGLE-539_bug_fix from origin.



삭제할 때는 push origin  다음에 삭제할 브랜치 앞에 :을 추가해야 한다.


$ git push origin :features/bug_fix

To https://github.com/samuel-kim/google-search.git

 - [deleted]         bug_fix



Posted by '김용환'
,

[git] 공커밋

etc tools 2017. 11. 10. 15:42



github 페이지가 잘 동작하다가 404 에러가 나는 경우가 있다. 

이 때는 공 커밋을 하나 날리고 push하면 된다. 


$ git commit -m 'rebuild pages' —allow-empty

$ git push




Posted by '김용환'
,



사용자 정의 maven jar를 사내 repository으로 업로드해야 할 떄 pom.xml을 굳이 고칠 필요가 없다. 간단히 아래와 같은 예제로 실행하면 사내 repository에 업로드(deploy)할 수 있다. 



$ mvn package 

// 성공


$ ls target/original-phoenix-0.0.1-SNAPSHOT.jar

original-phoenix-0.0.1-SNAPSHOT.jar



$ mvn -X deploy:deploy-file -DgroupId=com.google.phoenix -DartifactId=phoenix-core -Dversion=0.0.1-SNAPSHOT -Dpackaging=jar -Dfile=target/original-phoenix-0.0.1-SNAPSHOT.jar -Durl=http://maven.google.com/content/repositories/phoenix-snapshot



다음 주소에 확인하면 잘 올라갔는지 볼 수 있다 .


http://maven.google.com/content/repositories/phoenix-snapshot/com/google/phoenix/phoenix-core/0.0.1-SNAPSHOT/maven-metadata.xml



Posted by '김용환'
,

intellij에서 scala App을 실행할 때 다음과 같은 에러가 발생할 수 있다. 


Error: scala: No 'scala-library*.jar' in Scala compiler library in test



Open File -> Project Structures -> Libraries(또는 맥이라면 cmd + ;를 누름) 화면에서 scala sdk를 삭제한다. 


그리고 코드 화면으로 넘어가면 scala setup을 해야 한다는 경고창이 코드 뷰 상단에 뜨는데. scala setup 버튼을 누르면 잘 동작한다. 



이렇게 잘 안되면..


Open File -> Project Structures -> Libraries(또는 맥이라면 cmd + ;를 누름) 화면에서 scala sdk를 삭제하고 +를 눌러 수동으로 scala sdk를 선택한다.



### 추가 2017.11

그래도 안되면...버그다.



build.properties에 보니 sbt.version=1.0.2로 되어 있다.

검색해보니. sbt 버그였나 보다.


https://github.com/sbt/sbt/issues/3560

https://youtrack.jetbrains.com/issue/SCL-12591


sbt를 1.0.3으로 변경하고 build.properties의 sbt.version을 1.0.3으로 수정하니 문제가 발생하지 않는다. (또는 0.13.16으로 변경해야 할듯..)


Posted by '김용환'
,


intellij에서 sbt 컴파일 중에 에러가 발생했다. 


[error] java.lang.BootstrapMethodError: java.lang.NoClassDefFoundError: sbt/internal/librarymanagement/GetClassifiersModule



최신 버전으로 intellij를 업데이트하면 문제가 해결된다.

Posted by '김용환'
,