{{tag>[archive]}} ====== svn (subversion) ====== ==== Cycle ==== * ''info'': * ''init'': 저장소 생성 * ''import'': 최초 소스 업로드(이클립스 Team > Share Project) * ''checkout'': 최초 가져오기. * ''add'': 변경 * ''remove'' * ''update'': 가장 최근 소스를 로컬로 가져옴(변경사항만) * ''comflict'': 충돌 발생시 처리 * ''commit'': (check-in) 저장소에 업로드. 갱신. 리비전 증가 * ''export'': 버전을 제외한 순수한 파일만 받아옴. * ''trunk'': 프로젝트 중심 디렉토리. * ''branches'': 서브 개발 * ''tag'': 특정 릴리즈를 따로 저장 * ''hook'': 저장소의 이벤트에 의해 실행되는 프로그램 * ''lock'': 독점 * ''merge'': 브런치 병합 ===== Usages ===== * [[svn:usages]] * [[svn:svnadmin]] * [[svn:svnserve]] ===== USAGE (tortoise) ===== * ''**svn** [OPTIONS] [args]'' * ''**svn** **add** path'' 추가 * ''**svn** **auth** [OPTIONS] [args]'' * ''**svn** **blame** [OPTIONS] [args]'' * ''**svn** **cat** [OPTIONS] [args]'' * ''**svn** **changelist** [OPTIONS] [args]'' * ''**svn** **checkout** repository path'' 체크아웃 * ''**svn** **cleanup** [OPTIONS] [args]'' * ''**svn** **commit** [OPTIONS]'' * ''**-m** message'' 커밋 * ''**svn** **copy** [OPTIONS] [args]'' * ''**svn** **delete** path'' 삭제 * ''**svn** **diff**'' 차이 비교 * ''**svn** **export** [OPTIONS] [args]'' * ''**svn** **help** [OPTIONS] [args]'' * ''**svn** **import** [OPTIONS] [args]'' * ''**svn** **info** [OPTIONS] [args]'' * ''**svn** **list** [OPTIONS] [args]'' * ''**svn** **lock** [OPTIONS] [args]'' * ''**svn** **log**'' 로그 조회 * ''**svn** **merge** [OPTIONS] [args]'' * ''**svn** **mergeinfo** [OPTIONS] [args]'' * ''**svn** **mkdir** path'' 폴더 생성 * ''**svn** **move** source-path target-path'' 파일/폴더 이름 변경 * ''**svn** **patch** [OPTIONS] [args]'' * ''**svn** **propdel** [OPTIONS] [args]'' * ''**svn** **propedit** [OPTIONS] [args]'' * ''**svn** **propget** [OPTIONS] [args]'' * ''**svn** **proplist** [OPTIONS] [args]'' * ''**svn** **propset** [OPTIONS] [args]'' * ''**svn** **relocate** [OPTIONS] [args]'' * ''**svn** **resolve** [OPTIONS] [args]'' * ''**svn** **resolved** [OPTIONS] [args]'' * ''**svn** **revert** [OPTIONS] [args]'' * ''**svn** **status**'' 상태확인 * ''**svn** **switch** [OPTIONS] [args]'' * ''**svn** **unlock** [OPTIONS] [args]'' * ''**svn** **update**'' 업데이트 * ''**svn** **upgrade** [OPTIONS] [args]'' ===== USAGE (TortoiseProc) ===== * ''**TortoiseProc.exe** /command:update /path:"작업경로"'' 업데이트 * ''**TortoiseProc.exe** /command:commit /path:"작업경로" /logmsg:"메시지"'' 커밋 * ''**TortoiseProc.exe** /command:log /path:"작업경로"'' 로그 * ''**TortoiseProc.exe** /command:diff /path:"작업경로"'' DIFF * ''**TortoiseProc.exe** /command:add /path:"작업경로"'' 추가 * ''**TortoiseProc.exe** /command:revert /path:"작업경로"'' 되돌리기 * ''**TortoiseProc.exe** /command:cleanup /path:"작업경로"'' 정리 ===== Installation ===== ++++ RHEL | dnf install svnserve ++++ ====== svn server ====== * default port: 3690 ===== Installation ===== ++++ Linux | # root 계정으로 할 것 dnf install svnserve # Envrionment Variables - 임의 export SVN_ROOT_REPOSITORY=/home/repos export REPOSITORY_NAME=test mkdir -p $SVN_ROOT_REPOSITORY cd $SVN_ROOT_REPOSITORY svnadmin create --fs-type fsfs $REPOSITORY_NAME # $SVN_ROOT_REPOSITORY/$REPOSITORY_NAME/conf/svnserve 수정 systemctl start svnserve systemctl enable svnserve ++++