2021년 4월 28일 수요일

[git] git에 있는 목록 patch 파일 만들기.

---------------------------------------
git 특정 커밋에 대한 패치 생성 방법
---------------------------------------

git show commitID > name.patch
ex)
git show d9473f4ff38752a94017eceba8646d3813743edf > 0001_app_stach.patch


---------------------------------------
git 특정 커밋부터 지정한 개수만큼 패치 생성 방법
---------------------------------------

git format-patch -개수 commitID
ex)
git format-patch -3 7d7ef5d646e4c25047de18a581dc5c30527cb8da

생성된 파일
0001-aaaaa.patch // 지정된 commitId 2개 전 commit
0002-bbbbb.patch // 지정된 commitId 1개 전 commit
0003-ccccc.patch // format-patch 로 지정된 commitId

git의 로그 확인
peter$ git log -5
commit 813d065506f3dd2b1bf671c8920f8ad13f9f1818
Author:
Date: Wed Apr 28 13:00:08 2021 +0900
commit 내용 두번째

commit a3cc141e59932d9b85840acc71ccd1e4800fca7b
Author:
Date: Tue Apr 27 16:16:02 2021 +0900
commit 내용 첫번째

commit 7d7ef5d646e4c25047de18a581dc5c30527cb8da
Author:
Date: Fri Apr 16 15:00:25 2021 +0900
commit 내용 ccccc 패치 파일 생성 기준

commit 1147b12ff08b5e78d6ff495a98d3363833eb7dc3
Author:
Date: Tue Apr 13 15:57:00 2021 +0900
commit 내용 bbbbb

commit 753efad493ff138b6fd8b71e794dee252e18c1f0
Author:
Date: Tue Apr 13 09:37:37 2021 +0900
commit 내용 aaaaa

---------------------------------------
패치 파일 적용 방법
---------------------------------------

patch -p1 < 0001-aaaaa.patch

2021년 3월 14일 일요일

[git] git stash의 내용 patch 만들어 다른 pc에 적용 방법

// stash되어 있는 내용 확인.
git stash list


-----------------------------------------
// stash 선택 하여 patch 파일 만들기.
git stash show -p stash@{0} > cug.patch
-----------------------------------------
// patch파일을 적용할 폴더로 이동 cp cug.patch ../main-app/


-----------------------------------------
// patch파일 적용.
patch -p1 < cug.patch
-----------------------------------------


// patch 결과 미리 확인
patch -p1 --dry-run < cug.patch


// patch 되돌리기
patch -R -p1 < cug.patch

patch 옵션 -p[number], --strip[=number] 패스명의 제거 카운트(strip count)를 설정합니다. 패치 작성자와 다른 디렉토리에 파일을 두고 있는 경우, 패치 파일중의 패스명을 어떻게 해석하는지를 지시합니다. 제거 카운트는, 패스명의 선두로부터 몇개의 slash(/)를 제거하는지를 지정하는 것입니다(그 사이에 있는 디렉토리명도 제거됩니다). 예를 들면, 패치 파일중의 파일명이 /u/howard/src/blurfl/blurfl.c 에서 만났을 경우, -p 혹은 -p0 옵션을 지정하면, 패스명은 전혀 수정되지 않습니다.
-p1 을 지정하면, 최초의 slash(/)가 없습니다. u/howard/src/blurfl/blurfl.c
-p4 을 지정하면 blurfl/blurfl.c 그리고 -p 을 지정하지 않으면 "blurfl.c" 됩니다. 다만, 그 전의 패스(u/howard/src/blurfl)가 상대 패스로 해서 존재하는 경우는 별개로, 그 경우, 패스명 전체는 무수정인 채입니다. 마지막으로, 이렇게 해 얻을 수 있던 파일을, 커런트 디렉토리 혹은 -d 옵션으로 지정한 디렉토리내에서 찾습니다.

2020년 5월 26일 화요일

mac chrome에서 command line 크로스도메인 해제하고 실행하기

기존 브라우져에서 새 탭으로 열림 open -a Google\ Chrome --args --user-data-dir="/tmp/chrome_test" --disable-web-security 새 브라우져에서 열림 open -n -a Google\ Chrome --args --user-data-dir="/tmp/chrome_test" --disable-web-security 이건 윈도우 "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disable-web-security --disable-gpu --user-data-dir=~/temp

2017년 3월 29일 수요일

android 볼륨 up down 방법

private int mStreamType = AudioManager.STREAM_MUSIC;

public void volumeUp() {
    AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);    int currVol = am.getStreamVolume(mStreamType);    int maxVol = am.getStreamMaxVolume(mStreamType);
    if (currVol < maxVol) {
        am.setStreamVolume(mStreamType, currVol + 1, AudioManager.FLAG_PLAY_SOUND);    }
}

public void volumeDown() {
    AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);    int currVol = am.getStreamVolume(mStreamType);    if (currVol > 0) {
        am.setStreamVolume(mStreamType, currVol - 1, AudioManager.FLAG_PLAY_SOUND);    }
}

2016년 10월 27일 목요일

android unique한 키값 가져오기


SERIAL 번호 알아 내기

serial 번호를 알아 내기 위해 아래와 같이 처리시
(String) Build.class.getField("SERIAL").get(null);

return 값이 unknown 발생되는 경우가 있음.

---------------------------------------------

android id 알아 내기

import android.provider.Settings.Secure;

private String android_id = Secure.getString(getContext().getContentResolver(),
                                                        Secure.ANDROID_ID);

2016년 9월 6일 화요일

ubuntu windows에서 GUI로 원격 접속 하는 방법

ubuntu 16 버전 기준

- 원격 접속할 서버수정한다.
 
- xrdpp과 xfce4 프로그램을 설치 한다.
sudo apt-get update
sudo apt-get install xrdp
sudo apt-get install xfce4
- xsession 파일을 만든다.
echo xfce4-session >~/.xsession
- startwm.sh 파일을 수정한다. 아래 명령어로 파일을 수정한다.
sudo vi /etc/xrdp/startwm.sh
- 다음과 같이 수정한다.
#!/bin/sh

if [ -r /etc/default/locale ]; then
  . /etc/default/locale
  export LANG LANGUAGE
fi

startxfce4
- xrdp 를 재시작 한다.
sudo service xrdp restart

- 원격 서버 접속 테스트
winKey + r 키를 눌러 실행창을 띄운다. > mstsc 입력후 enter
원격 데스크톱 연결 프로그램 이 실행 되면 원격 서버 ip를 입력하고 연결버튼을 누른다.

login to xrdp 창이 표시 되면
username과 password 입력 후 사용하면 된다.


2016년 9월 5일 월요일

android 영상을 VideoView 사이즈에 맞게 표시하기 ( 늘리기 )



VideoView를 상속 받는 클래스를 만든다.

public class MseVideoView extends VideoView{
    public MseVideoView(Context context) {
        super(context);    }

    @Override    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        super.onMeasure(widthMeasureSpec, heightMeasureSpec);        setMeasuredDimension(widthMeasureSpec, heightMeasureSpec);    }
}

MainActivity 에서 VideoView 상속받은 MseVideoView에게 setLayoutParams 을 호출
mVideoView = (MseVideoView) findViewById(R.id.video_view);
mVideoView.setLayoutParams(lp);

FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(1280, 720);
lp.leftMargin = 0 ;lp.topMargin = 0;mVideoView.setLayoutParams(lp);

setLayoutParams 메소드가 호출되면 onMeasure 메소드가 호출된다.

영상이 FrameLayout.LayoutParams(1280, 720)를 통해 지정된 크키로 꽉차서 (늘려져서) 표시된다.