svn에 대해 알려주세요.

armyinsa의 이미지

현재 SVN를 이용하여 서버와 내컴퓨터간의 동기화를 잘되고 있는데요...

내 컴퓨터에서 소스수정을 하여 서버에 올리려고 하는데

[root@localhost /home/trunk]# svn update
무시함 '.'

무시한다고 나오는데요 모르겠습니다.

보통 내컴에서 수정하여, 저장소(레포지토리)까지는 잘 되는데요, 저장소(레포지토리)에

수정된 소스코드를 서버에 적용시키려고 하면 이런식으로 하는거 맞죠?

[root@localhost /home/trunk]# svn update
무시함 '.'

나오는데 왜 저장소에서 홈페이지에 적용이 안돼는지요?

subversion: http://www.pyrasis.com/main/Subversion-HOWTO#s-3.3 를 보면서 하고
있는데요...

7339989b62a014c4ce6e31b3540bc7b5f06455024f22753f6235c935e8e5의 이미지

svn update는 저장소에서 변경 사항을 받아서 로컬 작업 사본을 업데이트 하는 명령어입니다.
로컬 작업 사본의 변경 사항을 저장소에 적용하는 명령은 svn commit이에요.

---8< 서명 -----------------
애니메이션 감상 기록 http://animeta.net/

darkmyth의 이미지

간단하게 svn co 라고 하시면 됩니다.

svn update : 저장소에서 업데이트 된 내용을 가져오기
svn commit : 수정한 내용을 저장소에 반영하기

7339989b62a014c4ce6e31b3540bc7b5f06455024f22753f6235c935e8e5의 이미지

svn co는 체크아웃 하는 명령인데요.
커밋은 svn ci, 업데이트는 svn up입니다.

---8< 서명 -----------------
애니메이션 감상 기록 http://animeta.net/

armyinsa의 이미지

서버 -----> 저장소 ------> 로컬

예를들어)

서버 : Hyo 폴더
저장소 : http://192.168.101.211/svn/Hyo/trunk/Hyo
로컬 : Hyo 폴더


1.서버에 있는 Hyo폴더의 데이터를 저장소(레포지토리)로 동기화를 시켜습니다.
2.저장소를 이용하여 로컬로 저장소의 데이터를 전부 가져왔습니다.
3. 로컬에서 소스코드를 수정하여 저장소로 업데이트 및 commit까지 완료 되었습니다.

문제는 여기 입니다.

저장소에 있는 최신으로 데이터가 업데이트되어 있습니다.
저장소에 있는 데이터들을 서버에 업데이트 하고 싶은데요. 이게 잘 안되네요...

[centos@localhost /home/trunk]$ svn commit Hyo/app/views

<--이렇게 하면 저장소에 있는 Hyo/app/views를 코밋트 하지 않는가요?
자꾸.. 아래같이 작업사본이 아닙니다. 라고 나오는데요...

svn: '/home/trunk/Hyo.com/app/views' 은 작업 사본이 아닙니다

해결방법은요....

결론 : 저장소에 있는 HYO폴더의 데이터를 서버의HYO폴더에 적용하고 싶습니다.

익명 사용자의 이미지

누가봐도 뻔한 답이 있는데

댓글보면 참 답답합니다.

다들 똑똑한건 잘알겠는데 꼭 그렇게 해야하나요?

dgkim의 이미지

1. 서버(leo)에는 누군가가 수정을 하였다.

[was@leo /home/was/workspace/Hyu/trunk]$ vi src/main/webapp/app/views/*

2. 서버(leo)에서 수정사항을 저장소(SVN)에 반영하였다.

[was@leo /home/was/workspace/Hyu/trunk]$ svn commit

3. 나(nardo)는 프로그램을 수정하고 저장소(SVN)에 반영하였다.

[nardo@nardo-pc /home/nardo/workspace/Hyu/trunk]$ svn update
[nardo@nardo-pc /home/nardo/workspace/Hyu/trunk]$ vi src/main/resources/*
[nardo@nardo-pc /home/nardo/workspace/Hyu/trunk]$ svn commit

Q. 서버(leo)에서는 내가 수정한 것을 받고 싶다?

[was@leo /home/was/workspace/Hyu/trunk]$ svn update

질문에서 root@localhost 가 로컬인지 서버인지를 알 수 없네요.

dgkim의 이미지

이상한 상상으로......

로컬(nardo)에서 수정하고 난뒤 서버(leo)에게 commit할 수 있다라고.

svn update, commit 은 모두 저장소 기준입니다.

leo는 davi(저장소)에게 수정된 내역을 받고, ( update )
leo에서 수정한 내역을 davi(저장소)에게 보냅니다. ( commit )

nardo도 역시 davi(저장소)에게서 최신 수정본을 받고, ( update )
nardo에서 수정한 내역을 davi(저장소)에게 보냅니다. ( commit )

nardo가 leo에게 바로 보내는 것은 없습니다. ( SVN을 통해서는 )

nardo가 leo에게 저장소를 거치지 않고 보내려면, sftp나 rsync로 보내는 것이지요.

----

추가로, SVN 저장소는 항상 돌아가는 소스를 가지고 있어야 합니다.

로컬에서 수정한 내역을 테스트하고자 서버로 보낸다면, 위 설명의 sftp나 rsync로 작업을 해서 테스트를 한 후,

nardo나 leo 둘 중 한군데서 commit 하고, 반대편(nardo나 leo)에서는 revert 후 update 받으면 됩니다.

dgkim의 이미지

답을 달고 보니 2010년에 질문한 것이었다.

내가 왜 답을 했는데, 수고를 들여서

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.