문제

이제 SOF에 중복 된 질문을 가져 오기 전에 먼저 내가 찾고있는 것과 정확히 당신을 알리고, 나는 다른 질문과 답변을 해결할 것이고 왜 그것이 불충분한지 다룰 것입니다.

질문 # 1 :

나는 소스가 중앙 집중식 소스 제어 서버에서 유지되는 동안 라이브 공동 작업 편집을 수행하는 방법을 찾고 있습니다. 예를 들어, ME와 Joe Blon이 동시에 PeraneCodiceTag 코드를 편집하는 경우, 우리는 종합적으로 서로 다른 편집을 볼 수 있어야합니다. 우리가 같은 컴퓨터에 함께 앉아있는 것처럼 거의 마찬가지로. 이제 다음과 같은 시나리오를 취하십시오. Me and Joe가 오프라인으로 이동하며, Nimha Smith는 일부 코드를 업데이트하려고합니다. 내가 다음날 온라인으로 돌아올 때 Nimha가 서버에서 수면 / 떨어져있는 동안 업데이트 된 코드를 누르게됩니다.

이것은 라이브 공동 작업의 아이디어와 SVN 등의 소스 제어 시스템의 조합입니다.

가능한 복제물의 어드레싱 :

여기에 비슷한 질문이 있습니다. 공동 작업 편집 .NET 개발 - 가능성은 무엇입니까 그러나 유용한 것을주지 않으며 이유를 설명 할 것입니다 :

  • vsanywhere : 필요한 모든 당사자를 제외하고 중앙 공용 서버 (올바른 방향 ..)를 통해 실행됩니다. 세션에 참여하기 전에 자신의 컴퓨터에 똑같은 코드를 똑같이하고 일단 세션이 파괴됩니다.
  • Sourcemeet : P2P 시스템으로 실행되므로 오프라인 상태에서 변경 사항을 추적 할 서버가 없습니다. 그것을 시도하지 않았으므로 코드를 병합 할 수있는 방법 (전혀 가능하다면)
  • 를 알 수 없습니다.
  • Collabedit : VisualStudio
  • 클라우드 9 : VisualStudio

에는 분명히 이 질문 SVN 또는 GIT와 같은 소스 제어 소프트웨어에 대해 직접 질문 한 이제 Vsanywhere와 SVN을 함께 즐기기 위해 노력했습니다 (오프라인 상태에서 변경을받는 SVN, 온라인 개발자를위한 VSANYWhere).

X.cs

나는 최근 ""Nofollow noreferrer"> collab 라는 이름을 찾은 이교 논문 프로젝트를 발견했으며, 좋은 생각처럼 보이지만 나는 그것을 시도하기 위해 노력하는 것처럼 보일 수 없었습니다. 다른 사람이 성공한 사람이있는 경우 당신이 한 일을 알려주십시오. 이 콜라브 프로젝트를 얻을 수있는 것처럼 보이는 것처럼 보입니다. 내 필요에 맞는 무언가를 만드는 것이 좋을 것처럼 보입니다.

<edit>

또한 "NoFollow Noreferrrer"> Beweevee 서비스를위한 Visual Studio Extension이 있지만 모든 그것에 대한 링크가 죽었습니다. 및 "Nofollow Noreferrer"> Codealike vs 실시간 협업에 대한 대체 였을 것입니다. 실시간 기능이있는 FAQ 항목이 있습니다. 삭제되었고 "미래"에서 다시 구현됩니다.

질문 # 2 :

이제는 내 키가 큰 명령에 맞는 프로그램이 없을 수 없을 수도 있으므로 내 질문의 두 번째 부분으로 나를 데려옵니다. 이 직후와 같은 소프트웨어를 구현할 수 있습니까? 기존 오픈 소스 소스 제어 / 실시간 편집 코드가 있으므로이 작업을 수행하기 위해 시작할 수 있습니다. 아니면 내가 이것을 구현하고 싶다면 처음부터 시작하여 꽤 많이 붙어 있습니다. 그리고 내가 태클해야한다면 C #에서 이런 일을 해결하고 싶은 태그가 볼 수있는 태그가 볼 수 있습니다.

업데이트 2017

코멘트에서 지속적인 관심이 있었기 때문에 나는 우리가 관심있는 사람을 모을 수 있고 현실을 잠재적으로 만들 수있는 짜자를 만들었습니다. https://gitter.im/sof-centrailized-collab-editing/lobby .

도움이 되었습니까?

해결책

이 작업을 해결하려면 Visual Studio Extension으로 수행하고 싶을 수도 있습니다. "애드온"및 "확장"에는 두 가지 유형의 플러그인 유형이 있습니다. 개인적으로 나는 확장자 을 써야한다고 생각하지만 어느 쪽이든, 어느 쪽이든 당신은 c #.

에 그들을 쓸 수 있습니다.

Visual Studio의 텍스트 편집기에 연결해야합니다. Google 이이 작업을 수행하는 방법을 위해 또는 기존 예제를 살펴볼 수 있습니다. 탄력있는 TabStops 를위한 Visual Studio 확장. 귀하의 확장 프로그램은 변경 사항을 모니터링 한 다음 디자인을 디자인하는 일부 프로토콜을 통해 서버로 보내야합니다. 서버를 직접 작성해야하지만 첫 번째 버전에서는 확장자를 사용하는 모든 사람들에게 편집을 보내는 것만으로 만드는 것입니다. 그런 다음 확장은 다른 모든 사람의 편집기에서 모든 사람이 편집 할 수 있습니다.

누군가가 이전 버전의 코드로 서버에 연결하면 확장자가 서버에서 최신 버전을 다운로드 할 수 있습니다. 그러나 사용자가 오프라인 (즉, 서버에 연결되어 있지 않은 상태에서) 편집을 한 동안 편집 한 경우, 영리한 병합을 수행해야합니다. 이것은 사소한 것이 아니지만 전에 그것을했기 때문에 그것을하는 방법을 알고 있습니다. 당신이 아주 잘 묻는다면, 당신을 위해 병합 알고리즘을 작성할 것입니다. 그런 다음 기본 (서버와 동기화 된 버전)과 두 개의 편집 된 버전 (하나의 편집 된 버전과 서버에서 오프라인 및 서버에서 최신의 최신 버전)을 선택하면됩니다.

이 항목을 작동 시키려면 잠재적으로 유용한 것을 생성 할 수 있습니다. 당신이 당신의 일을 홍보했는지 확인하십시오! :)

다른 팁

다른 사람들이 물건을 입력 한 다음 편집기에서 커서 전쟁이 이미 Google Wave에서 수행되었습니다.IIRC 프로젝트 자체가 실패한 후 오픈 소스 또는 무언가로 밀려났습니다.그것은 모든 업데이트 문제를 관리하고 컴퓨터 과학 관점에서 꽤 견고하고 견고한 기본 업데이트 모델을 기반으로합니다.그것은 소스 코드 시스템과 유사한 역사와 모든 종류의 것들을 제공합니다.

당신이 원하는 것을 특별한 편집 위젯으로 구현할 수 있습니다.좋은 직업을하는 경우 Google Wave를 유용하고 재능 한 공동 편집 플랫폼으로 부활시킬 수 있습니다.

VS가 어디서나 VSA를 시도 할 때까지 (5 월 주위) 소프트웨어 버전이 릴리스 후보 2 (= 버기) 릴리스되었으므로 SVN 통합에 대한 문제점이뿐만 아니라 문제가 발생했습니다. tfs와 git.

현재, 최신 RC3의 일부 SVN 문제가 해결되었으므로 최종 버전을 준비 할 것으로 예상

LAN에서 자신의 VS Anywhere 서버 인스턴스를 실행할 수 있으므로 공용 서버를 사용할 필요가 없으므로 학생이거나 오픈 소스 프로젝트가있는 경우 VS Anywhere 클라이언트 및 서버가 있습니다. 상업적 사용이 아니며 지불 해야하는 작은 수수료가없는 경우 무료입니다.

오프라인 코딩에서 TIMWI 재 동기화로 명시된 바와 같이 사소하지 않고 실제로 구현하기에 정말로 복잡합니다. 우리는 SCM 이이 작업을 수행하기위한 올바른 도구라고 생각하며,이 방향에서는 아직 일하지 않기 때문에 우리의 의견은 최소한이 영역에서 작업 할 때까지 표준 SCM을 사용하여 최신 변경 사항을 가져오고 세션을 설정하기 전에 로컬 복사본과 병합 할 수 있습니다.

VSA는 프로세스가 세션을 부트 스트랩 할 수있게하여 원격 Visual Studio 복사본과의 차이점을 확인하고 2) 로컬 복사본에서 해당 상태로 병합하여 세션을 열 때마다 오른쪽 상태로 병합하십시오. ...에 ( "1)" "2)"가오고 있습니다)

세션 관리는 사소하고 정말로 복잡한 것들이 아니며 가능한 시나리오가 많이 있으며, 이는 세션을 완료 할 때 세션을 정리하기 때문입니다. 그러나 한 번의 클릭만으로 언제든지 세션을 다시 시작할 수 있습니다 ... 이 정보가 도움이되기를 바랍니다. 언제 어디서나 VS Anywhere 지원을 무료로 제공합니다.

프로젝트를 시작하려면 이러한 플러그인을 구현하려면 해당 플러그를 수행하는 방법에 대한 정보를 제공 할 수 있습니다. 멋진 출발점은 동시 편집을 구현하기 위해이 접근 방식이 필요할 때 작동 변환을 이해하는 것입니다. P2P 또는 클라이언트 / 서버 프로토콜은 클라이언트간에 데이터를 전송합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top