2011-09-28 3 views
5

데미지 빌려주세요! 나는 절대로이 일을하지 말라는 구글 히트작 6 개에 지쳤다. 정말 좋은 것들을 엿먹이지! 나는 db/transactions에서 실제 파일을 얻을 수 있다고 확신한다. 그래서 어떻게 이들을 흥미로운 방식으로 고칠 수 있을까? 나는 SVN :: Delta를 보았지만, 무엇을해야 하는지를 알지 못한다. (누군가가 저장소의 변화에 ​​대한 그래프를 만들었고, CIA에 코드 된 메시지를 보냈다.).Subversion 저장소에있는 델타의 형식은 무엇입니까? 그리고 커밋 훅 (pre-commit hook)에서 변경하면 얼마나 큰 문제가 될 수 있습니까?

나는 이것을하지 않는 이유를 더 듣기 위해 정말로 신경 쓰지 않는다. 나는 전복을 사용하는 40 ~ 50 명의 사람들이있는 환경에서 일합니다. 코딩하는 동안 web.config 파일에 암호가 필요합니다. DataSource.groovy 파일에 이름을 지정합니다. 그리고 우리가 그들을 버려서 커밋을 거부하는 것은 지옥만큼 성가신 일입니다. 우리는 수동으로 삭제 된 암호로 파일을 저장해야합니다. (그리고 그 파일을 열어야합니다. 반드시 열어야하는 것과 같지 않습니다.) 그런 다음 작업이 완료되면 다시 작업을 계속해야합니다. 이것은 좋은 생각입니다. 사람들이 아무것도하지 않으려 고 Pavlovian reflex를 개발할 때까지 커밋 할 때마다 사람들을 배신하고 싶을뿐입니다. 그리고 왜? 컴퓨터가 작업을 자동화하지 않아야하기 때문에? 소프트웨어 클라이언트는 프리 커밋 후크가 실제로 개발자의 컴퓨터에 여전히 버전을 저장하지 않았다는 것을 알지 못하기 때문에?

나는 여기 언어가 상당히 불가지론이다. 당신이하지 말아야 할 일을하는 방법에 대한 예제를 보여주십시오 ... 어떤 파일을 미리 커밋에서 편집합니까? DELTA # # # 줄 뒤에 어떻게 해석해야합니까? 거기에 도움이되는 도서관이 있습니까? 좀 재미있게 지내자!

PS 진심으로, 아무도 "나쁜 아이디어"태그를 만들지 않았습니까? WTF.

+2

+1 멋진 유령을 위해 – daxim

답변

4

Subversion이 아닌 귀하의 빌드 프로세스입니다. 암호를 적용하지 말아야 할 경우 다음과 같이하십시오.

1 - Web.config 파일을 커밋해서는 안됩니다. 대신 Web.config.dev 또는 Web.config.qa과 같은 파일을 커밋하십시오.
2 - 빌드 스크립트에서 적절한 .config 파일의 이름을 Web.config으로 변경 한 다음 적절한 암호가 삽입되도록 토큰 바꾸기를 수행하십시오. 이 정보는 현재 사용중인 환경이 무엇인지 알려주는 커밋되지 않은 다른 파일 (어떤 .config 파일을 사용할 지 알고 있음)과 암호가 무엇인지에 따라 달라질 수 있습니다.

+0

정말 멋지다 ... 파일에 대한 버전 제어를해서는 안된다는 말. 내가 생산에서 손실되거나 손상된 경우 (한 달 전에 일어난 것), 테이프 백업을하고 며칠 후에 다시 작동하도록 요청할 수 있습니다. 클라이언트 측의 사운드는 정말 좋으며, 수십 명의 개발자가 있습니다. 새로운 컴퓨터가 몇 달 안에 출시되면 몇십 가지 시스템에 다시 설치할 수 있습니다! –

+2

@ 존 당신이 나를 따라오고 있다고 생각하지 않습니다. 커밋하지 않은 파일은 빌드 스크립트에 의해 자동으로 생성됩니다. checkout 또는 build 스크립트로 생성되지 않은 유일한 파일은 암호 파일로서 요구 사항으로 명시 적으로 커밋되지 않았습니다. 비슷하게 배포 스크립트는 web.config를 만듭니다. – RedFilter

+2

@JohnO : 아니요, 비밀번호를 삽입하지 않은 경우를 제외하고 파일을 버전 제어하고 자동화 된 프로세스에 비밀번호를 입력하도록 알려줍니다. '.c' 파일을 버전 관리하는 것과 비슷하지만 생성 된'.o' 파일은 관리하지 않는 것과 같습니다. – derobert

관련 문제