GUI sin

파워빌더에서의 버전관리(version control, revision control), 소스 코드 관리(source code management, SCM)는 정말 너무 불편하고, 번거롭기만 했었습니다.

 

지금까지 저의 경험을 정리해보면,

 

1. 윈도우 공유폴더로 공유 : 직원들과 의사소통으로 형상관리, 뷁!

2. 자체 개발한 버전관리 시스템을 이용 : 각각의 유저들이 Lock을 걸고 사용하는 방식인데, 그나마 가장 편리했네요.

3. 서브버전(Subversion) : 추가 확장(PBSCC Proxy)와 함께 이용했는데 많이 불안합니다.

4. 파워빌더 자체 내장(PB Native) : 위의 2번 다음으로 유용하지만, 아주 기초적인 Lock 방식 정도만 사용가능한 수준

 

이런 방법등을 사용해보니, 그나마 2번의 경우가 무난히 사용할수 있었지만, 그마저도 이직한뒤엔 사용할수가 없게되니 너무 답답하더군요. 그러던중 파워빌더 2017 R2 이상에서 Git 과 Subversion 이 자체 내장되어 있다는 소식을 듣고 한번 세팅에 도전 해봤습니다. 물론 이전에도 Git 을 지원하는 add-on 같은게 있었는데, 상당히 불안정 하거나 유료였던 기억이 나네요.

 

< 준비물 >

1. 파워빌더 2017 R2 이상 : 이 문서는 파워빌더 2017 R3로 작성하였는데, R2 버전에서도 사용해봤지만, 2017 일반 버전에선 확인해보지 못했습니다.

2. 원격저장소 : GitHub, GitLab 등, 각각의 특징을 파악하시고 가입하세요. 둘다 기본적인 기능은 무료입니다.

3. Git Client (옵션) : https://git-scm.com/ 에서 다운로드 받을수 있습니다. 이게 필수적으로 꼭 필요한줄 알았는데, 파워빌더 자체 내장되어있다보니 특별히 필요는 없더군요. 당연히 Git 의 기초지식이 있다면 더 쉽게 이해할수 있을겁니다.

 

< 파워빌더에서 Git 설정 >

 

00. 파워빌더에서 적당한 위치에 WorkSpace, Target 등을 구성했습니다.

  • 폴더위치 : C:\src\2017R3\test
  • WorkSpace : test
  • Target : test

 

[그림 1-1] 좌측의 System Tree - WorkSpace 에 마우스 오른쪽 버튼을 누르면 팝업 윈도우가 나타납니다. Add to Source Control 을 선택합니다.

 

[그림 2-1]  Git 을 선택하고 OK 버튼을 클릭합니다.

 

[그림 3-1]  발행자와 Email을 입력합니다.

 

[그림 4-1] Comment에 Commit 메시지를 입력하고 OK 를 클릭합니다.

Git 을 초기화 하면서 Target에 속해있는 각각의 pbl들은 ws_objects 라는 폴더안의 pbl의 이름과 동일한 폴더가 만들어지고, 각각의 Object들은 마치 Export 한것처럼 파일로 만들어지게 됩니다. [그림 4-1] 참고.

 

 

[그림 5-1] Output 에 메시지가 출력되고, System Tree의 각각의 Object 의 아이콘 왼쪽에 초록색 점이 하나씩 생겨났습니다. Git 의 Local 저장소 초기화가 완료되었다는 뜻입니다.

 

 

[그림 6-1] w_test_main Window Object 에 스크립트를 넣고 저장을 하게되면 아이콘이 초록색 V 모양으로 바뀐걸 볼수 있습니다. 수정되었다는 뜻으로, 되돌리거나 비교할수 있습니다. 

초록색 Check 아이콘을 Lock을 걸었다는 뜻으로 오해할수 있는데, Git 은 과거에 사용해 오던 Lock 방식의 버전관리가 아닙니다. 저처럼 헛갈리지 마세요. 그냥 '수정되었다' 정도로 이해하는게 좋습니다.

 

[그림 7-1] System Tree의 WorkSpace 에서 마우스 오른쪽 버튼을 누르고, Git Commit 을 선택합니다. 위에서 수정한 Object 하나만 나오는걸 볼수 있습니다. 적당한 Commit Comment를 입력하고 OK 버튼을 클릭합니다.

 

여기까지가 Git 의 Local Repository 설정방법이라고 이해하시면 됩니다. 아래부턴 원격 저장소의 설정 방법입니다. GitHub 나 GitLab 에 가입하세요.

 

[그림 8-1] GitHub에 가입하고 초기 대문 화면입니다. 좌측 상단의 초록색 New 버튼을 클릭하거나, 우측 상단의 + 버튼을 클릭하고 New Repository 를 선택합니다.

 

[그림 9-1] 저는 test 라는 원격 저장소를 만들었습니다. 공개 설정은 Private(비공개)로 선택하고, 아래 Create repository 초록색 버튼을 클릭합니다.

 

[그림 10-1] https://github.com/[GitHub ID]/test 와 같은 형식의 저장소 주소가 만들어졌습니다.

 

[그림 11-1] 파워빌더로 돌아와서 우리가 만든 WorkSpace를 원격 저장소로 Upload(Push) 해봅시다. WorkSpace 팝업메뉴에서 Git Push 를 선택합니다.

 

[그림 12-1] 적당히 세팅을 완료하고, Test Connection 을 눌러서 GitHub에 접속이 잘되는지 테스트 해보세요.

 

[그림 13-1] 테스트 접속 성공!!! 했다면, [확인] - [OK] 버튼을 눌러 나의 Source 가 GitHub 로 Push 해주세요.

 

 

 

[그림 14-1] 다시 GitHub로 돌아와 새로고침 해보면 앞서 Push 한 내용들이 Commit 메시지와 함께 잘 올라와 있습니다.

여기까지가 Upload(Push) 였다면, 이제부턴 새로운 저장소를 가져오는(다운로드) 방법에 대해 알아봅시다. 정확히 예기하면 다운로드 라기 보단 Init/Pull 이라고 하는데 일단 그냥 다운로드 라고 칩시다.

 

적당한 위치에 소스를 가져올 폴더를 생성합니다. 저의 경우 C:\test 라는 폴더를 생성했습니다.

 

[그림 15-1] 아무것도 없는 빈 상태의 (No WorkSpace) 에 마우스 오른쪽 버튼을 누르고 나오는 팝업메뉴에서 Connect to Workspace 를 선택합니다.

 

[그림 16-1] Checkout Directory 가 대상 폴더입니다. 위에서 만든 폴더 위치를 선택하고 OK 버튼을 눌러줍니다. 내 GitHub ID가 아니라 다른 ID로도 가능하지만 경우에 따라서 Collaborators(협력자) 권한이 필요할수도 있습니다.

 

[그림 17-1] 이렇게 가져오기가 완료 되었다.

 

제가 이런저런 테스트를 해봤더니, 잘 동작합니다. 아직 Branch 는 해보지 않았지만, 뭐 잘 될거라고 믿고 있습니다.

Comment +0

컬럼들이 블록으로 선택이 되면서,

일반적인 SELECT 등은 정상적으로 동작하는데, 자꾸 아래와 같은 메시지가 출력이 된다.


1
2
3
4
Unable to resolve column 'column name' less... (Ctrl+F1) 
 
Inspection info: This inspection performs unresolved SQL references check.
 
cs


해석하자면,


'열 이름'열을 확인할 수 없습니다 (Ctrl + F1).

검사 정보 :이 검사는 확인되지 않은 SQL 참조 검사를 수행합니다.


라는데, 이게 무슨 뜻인지 모르겠어서 확인해보니,


좌측의 Database 연결정보에서 적당한 스키마를 선택하지 않아서 발생하는 문제였다.

Database 연결에 따른 적절한 스키마를 전체 혹은 일부 선택해 주면 문제가 사라진다.


문제가 없는줄 알았는데, Ctrl 키와 함께 Table을 선택해서 바로이동 하는 등의 동작이 정상 동작 하지 않는다.

Comment +0