2021. 1. 7. 20:10ㆍ장비제어개발관한이야기
안녕하세요, YoungM입니다.
오늘은 장비개발 하면서 많이 사용하는 'Beyond Compare' 라는 프로그램에 대해서 소개 하려 합니다.물론, 장비개발뿐만 아니라 개발을 하게 버전관리가 필요한 프로젝트라면 전부 필요 할꺼라 생각합니다. (모든 프로젝트는 버전관리필요함^^) 어제도 사용하고 내일도 사용할 프로그램입니다.
대학생때, 이 프로그램을 몰라서 소스 끼리 항상 눈 빠지게 비교 노가다 하다가 시간을 전부 까먹었던 추억이 있습니다.
너무 좋은 프로그램이라 구매를 추진해서 회사에서 아주 잘 쓰고 있는 프로그램입니다.
개발자로서 시작하시는분 들은 필요 사용법을 알아 두시는게 진리입니다. 그냥 믿으세요^^
사용법도 엄청 간단합니다.
쓰다 보면 개발 뿐만 아니라 다른 분야에서도 활용성 있게 쓸수 있는 프로그램입니다. 모두 숙지하세요^^
Beyond Compare란?
소스비교하는 프로그램입니다. 물론, 무료 프로그램(WinMerge, ArcroDift) 있지만, 사용면에서나 여러 다른 기능을 비교하더라도 최고라 생각 됩니다.
주로 장비회사 기준으로 사용하게 되는 기능은 다음과 같습니다.
- 다른 여러 사람과 협업을 위한 소스머지
- 라인에 업데이트 후 이상 현상에 대한 소스 수정부분 확인
- 다른직원, 혹 부하직원의 진행사항 확인
- 기타 수정내용 확인
Beyond Compare 설치 방법
식상하지만, Yes만 눌러서 잘깔아 주면 됩니다. 제가 사용하는 버전은 BCompare-3.3.4.14431를 사용합니다. 회사가 사준거라 이 버전만 써야 함 ㅠ.ㅠ
상위버전도 별반 틀리지 않습니다.
30일 무료로 사용 가능하니 써보시고 구입해주세요.
장비회사에서 Beyond Compare 활용방법
설치가 완료되면 그냥 아무말 안해도 잘 쓸만큼 쉬운 프로그램 이지만, 제가 쓰는 방법을 가르켜 드리려 합니다.
"소스비교"
원래의 역할인 소스 비교방법입니다.
위와 같이 버전 0105버전 과 0106 버전 소스 비교를 시작 하겠습니다.
- 0105 폴더 좌클릭후 우클릭 해서 Beyond Compare 비교대상(LEFT) 을 선택합니다.
그리고 같은 방법으로 0106 클릭후 Compare to "ImView 0105" 를 선택하면 됩니다.
- 위에 내용을 정상적으로 진행하면 Beyond Compare 가 실행 되는데 원하는 폴더선택이나 전체선택후 '=' 표시를 눌러주면 바이너리 단위로 비교를 해서 틀린 파일을 안내해줍니다. 같은 파일은 검정, 아닌 파일은 빨간색.
파일비교 완료
- 빨간색 파일들을 클릭하면 수정된 부분을 표시 할수 있습니다. 표시된 부분 클릭하면 틀린부분이 서로 적용할 수 있습니다. 좀더 편한 팁을 드리자면 모든 동작들이 단축키가 있습니다. 찾아 보시고 자주 쓰는거는 외우는게 작업 속도면이나 여러가지로 편합니다.
"이미지비교"
위와 같은 방식으로 이미지파일도 가능합니다. 우리는 특히 비전을 많이 다루다 보니까 많이 쓰는기능인데요. 특별한 프로그램 없이 이미지간 서로 얼마나 차이나는지 비교해줍니다.
뿐만 아니라 약간의 이미지간 Shift 비교, 합이미지, 차이미지, 확대, 축소도 가능합니다. 비전 프로그램을 하다보면 이미지로 디버깅을 할 경우가 많은데 많은 도움이 되고 있습니다.
"버전관리"
TortoiseGit 과 연동하여 수정부분을 자동으로 3WayMerge를 지원합니다. 이 내용은 TortoiseGit 내용 포스팅 하게 되면, 그때 알려 더 자세히 알려 드리겠습니다.
정말 개발일을 하면서 많은 도움을 주는 프로그램입니다.
다른 개발하시는 분들도 많이 쓰겠지만 특히, 개발일을 시작하시는분들은 이런 프로그램이 있구나하고 편히 개발일을 했으면 좋겠습니다. 위에 소개한 기능 외에도 엑셀등 유명한 파일포맷들의 차이점도 비교가 가능하고 기본적은 텍스트 기반은 전부다 가능하니 많이많이 써주세요.
아참,파일비교를 좀 응용해서 업체간 텍스트파일 포맷 차이점을 쉽게 캐치 할수 있습니다. 조금 써보셨으면 어떻게 응용하는지 감이 오셨을 꺼라 생각합니다. 그럼, 즐거운 프로그래밍 하세요.
'장비제어개발관한이야기' 카테고리의 다른 글
유용한 시간관련 클래스[MFC/C++] (1) | 2021.01.10 |
---|---|
간단한 장비제어를 위한 시리얼 통신(C++/MFC) (3) | 2021.01.07 |
Bayer 변환과 카메라 제어 (0) | 2021.01.06 |
장비제어에서 소켓통신이 필요한 순간... (1) | 2021.01.06 |
심플하고 강력한 MFC,C++ 용 XML 파서(CMarkup) (0) | 2021.01.05 |