[완료]subversion에서 커밋을 할 때 반드시 id와 패스워드를 입력받도록 하고 싶습니다.

choco6의 이미지

저희 회사에서는 서버엔진 소스를 subversion으로 버전관리를 하고 있습니다.
저희 회사 개발환경은, 서버의 전체 소스를 특정 계정의 디렉토리에 올려놓고 개발자들은 서버소스를 수정하고 테스트하기 위해 사정상 동일한 유닉스 계정으로 로긴하여 소스를 수정하고 있습니다. 즉, 서버소스가 저장된 계정을 개발자들이 공유하고 있는 형태인거죠.. 그리고 커밋을 할 땐 각각 배정된 subversion 계정으로 커밋을 하는겁니다..

그런데 버전 관리자인 제가 소스를 머지해서 서버소스인 server_src를 커밋을 했다고 하면,

$ svn ci server_src

이렇게 한번 커밋하고 나면 이후 A라는 사람이 담당모듈을 수정해서 다음과 같이 커밋하면,

$ svn ci server-src/moduleA

그럼 이전에 전체 커밋을 했던 제 계정으로 그냥 커밋이 되어버리네요..
TortoiseSVN에서는 커밋을 할 때마다 계정과 패스워드를 입력해야 하는데 유닉스에서는 한번 커밋을 하면 이후에는 이전에 커밋했던 계정으로 그냥 커밋이 되어버리니까 다른 사람이 커밋을 해도 자꾸 제 이름으로 커밋이 되어버립니다. --;;

커밋을 할 때마다 계정과 패스워드를 입력하도록 설정하려면 어떻게 해야하는지요.

강정한의 이미지

원래 방식이 ssh, apach, svn 형태의 3가지 아닌가요?
예전에 제가 사용했을땐, ssh 로 했었구요. 물론 계정으로 받은거지만,
이방식 말고, 저장소에 유저를 지정하는 방식으로 운영하실수 있습니다.
저장소 생성하게 되면, 저장소 하위 디렉토리에 svnserve.conf 생성되는데 거기에,
password-db = passwd 형식이고, user를 지정할 수 있습니다. 물론 거긴 plan passwd 형태로
다 보인다는게 흠입니다만, 특정 apach, 계정이 없어도, 저장소에 접근하려면, 가상의 유저를 만들어서
사용하는 방법이 있습니다.
기억이 잘 안나서, 생각나는 것만 말씀드렸네요.

choco6의 이미지

제 질문에 이미 subversion에 각각의 계정이 배정되어 있다고 말씀드렸는데... --;;;
따라서 conf의 passwd 파일에 이미 각 개발자 유저가 지정되어 있습니다.
제 질문의 요지를 다시 말씀드리면....
subversion의 conf디렉토리에 passwd 파일은 다음과 같이 두 명의 유저를 등록했습니다.

[user]
a = mypassa
b = mypassb

그리고 소스는 유닉스 developer계정으로 체크아웃을 받았습니다.
이후 a라는 개발자가 유닉스 developer계정으로 접속하여 소스를 수정하여 커밋을 할 때 subversion에 a라는 아이디와 패스워드로 커밋을 합니다.
이후, b라는 유저가 developer유닉스 계정으로 접속해서 소스를 수정하고 커밋을 하면 이때 subversion에서는 아이디와 패스워드를 입력하라는 프람프트가 띄어주어야 b라는 아이디에 mypassb를 입력할텐데.... subversion은 아이디와 패스워드를 묻는 절차도 없이 그냥 지 맘대로 a라는 아이디로 커밋을 해버린다는거지요..
제가 이해하기 쉽게 설명을 해드린건지...
ktd2004의 이미지

TSVN의 경우에도 아마 ID/PASSWORD 입력할 때 보시면 "암호저장"이라는 체크박스가 있을 겁니다.
subversion도 한번 ID/암호를 입력하면 어디엔가($HOME/...) 저장하는 것으로 알고 있습니다.

다음 옵션을 한번 사용해 보시죠. 아마 입력한 ID/암호를 저장하지 않는 옵션으로 알고 있습니다.

svn ci --no-auth-cache
choco6의 이미지

아.. 네, 바로 KTD님께서 지적하신 "암호캐쉬" 기능때문인 것 같습니다..
그런데.. 커밋을 할 때마다 일일이 --no-auth-cache 옵션을 주라고 하는건 개발자들에게 번거로움을 주는데.. 혹시 유닉스 subersion에서 --no-auth-cache를 기본옵션으로 지정하게 할 수 있는 방법은 없을까요..

ktd2004의 이미지

*nix의 alias라는 기능도 쓸만하죠(^^);

alias svn='svn --no-auth-cache'

다음 링크에 보면 subversion의 설정파일에서 설정할 수 있게 되어있습니다.
http://svnbook.red-bean.com/en/1.1/ch07.html

편하신 것을 사용하시면 될 것 같네요..

choco6의 이미지

네, KTD님.. 명쾌하게 해결될 것 같네요..
답변 감사드려요..^^

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.