iOS 자동빌드를 위해 Jenkins에 연결 중..

빌드 시 SVN의 저장소가 lock이 걸렸다는 로그가 콘솔에 찍히며 빌드에 실패했다. 

젠킨스 빌드의 Console Output

뭘까.. 하다가 검색해보니 .svn에 lock파일을 지우거나 Clean up을 해주면 된다고 했다.

.svn에 lock파일은 없었고 없으면 Clean up해주면 된다는 내용대로 따라해보기로 했다.

(lock파일이 없으면 wc.db 파일을 SQLite를 실행해 작업을 해주면 된다는데... SQLite를 다운받아서 데이터베이스 파일을 까고싶지는 않았다...)

Clean up을 하고 다시 빌드를 눌렀는데..! 

똑같은 에러가 발생하며 빌드에 실패했다.

 

무엇이 문제인고 하니

 

Clean Up의 기본 설정에서 Breakup Lock을 체크해주지 않아서.. Lock이 풀리지 않았던 거였다.

웃겼다..

 

오늘도 다사다난하게 해결완료했다. 

 

 

public enum poolType
{
     start,
     bullet,
     last
}
        
for(poolType p = poolType.start + 1; p < poolType.last; ++p)
{
     Debug.Log(p.ToString()); 
}

 

enum 열거형을 만들다가 string 값도 받아오고 싶을 때

자세한 코드는 지우고 Debug로 p의 값을 받아오게 출력해 보면 start의 다음부터 last 전값까지니까 bullet이 로그에 찍힌다. 

 

 

 

 

 

프로젝트를 git에 올리는데 ignore에 Library 폴더를 추가해줬음에도 metadata가 자꾸 포함이 됐다.

git ignore를 수정한 후 적용이 안됐던 문제가 전에 있어서 그거 때문인가? 싶었는데

 

결론적으로는 .gitignore 파일을 수정했다. 

 

# This .gitignore file should be placed at the root of your Unity project directory
#
# Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore
#
/[Ll]ibrary/
/[Tt]emp/
/[Oo]bj/
/[Bb]uild/
/[Bb]uilds/
/[Ll]ogs/
/[Mm]emoryCaptures/

 

내 git ignore 중 Libary 관련 내용은 다음과 같았는데 이 내용에서 폴더 이름 앞의 '/'를 빼줬다.

 

# This .gitignore file should be placed at the root of your Unity project directory
#
# Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore
#
[Ll]ibrary/
[Tt]emp/
[Oo]bj/
[Bb]uild/
[Bb]uilds/
[Ll]ogs/
[Mm]emoryCaptures/

 

이런 문제일거라고는 처음에 생각도 못해서 고생하긴 했는데 어쨌든 해결했다. 

 

 

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

 

아.. 나중에 알고보니 gitignore를 유니티 프로젝트 바깥에 놔줬다. 

 

 

엑셀파일 파싱을 위한 기본적인 세팅 

더보기

우선 내가 사용할 Visual Studio에서 Microsoft의 Excel을 이용하기 위해 Nuget 패키지 추가 해주고 

 

Nuget 솔루션 패키지 관리에서 Microsoft.Office.Interop.Excel 을 검색해주면 된다. 

 

설치가 완료되면 System.Runtime.InteropServices와 Microsoft.Office.Interop.Excel을 추가해준다.

 

 

 

 

진행 도중 microsoft' 네임스페이스에 'office' 형식 또는 네임스페이스 이름이 없습니다 라는 에러가 발생하는 경우 

 

 

참조 관리자에 가서 System.Managerment를 추가하고 확인을 눌러줬지만 그래도 에러가 사라지지 않았다.

 

 

 

 

이럴 땐 COM 카테고리에 들어가서 System.Management도 추가해주면 된다.

 

 

 

 

 

현재 브랜치에서 다른 브랜치의 특정 commit을 내 브랜치에 merge하고 싶을 때는 체리픽을 이용한다. 

 

git cherry-pick (가져오고 싶은 커밋 넘버)

 

bash 혹은 소스트리에서 터미널을 열어 해당 명령어를 입력해주면 된다. 

 

 

ignore를 추가했는데 자꾸 계속 파일들이 추가될 때

git의 캐시문제 이므로 터미널을 열어서 캐시 삭제 후 다시 커밋하면 된다. 

git rm -r --cached .
git add .
git commit -m "remove source files"

 

 

 

추가로 git ignore파일에 추가할 내용을 쉽게 작성해주는 사이트

 

https://www.toptal.com/developers/gitignore

 

gitignore.io

Create useful .gitignore files for your project

www.toptal.com

사이트에 들어가서 현재 프로젝트에서 사용중인 개발 환경, 프로그래밍 언어등을 입력하면 자동으로 내용을 만들어 준다.

전체 복사해서 .gitignore 파일을 생성하면 된다. 

 

 

+ Recent posts