Visual Studio Live Share 및 GitHub를 사용한 원격 코딩

이미 재택 근무를하고 있지 않다면 곧 일을 할 것입니다. 그렇다면 문제는 코드를 빌드하고 제공 할 수 있도록 이미 가지고있는 도구를 어떻게 사용할 수 있는가입니다.

VPN 및 기타 원격 액세스 기술은 홈 네트워크를 온 프레미스 소스 코드 저장소 및 기타 주요 개발 도구에 연결하여 보안 연결을 제공 할 수 있습니다. 원격 개발 워크 스테이션은 개인 정보와 작업 리소스를 분리하기 위해 추가 보안 정책이 필요할 수 있지만 주요 리소스와 완전히 격리 될 필요는 없습니다.

연결은 중요하지만 문제가 가장 적을 수 있습니다. 우리는 사회적 동물이고 많은 개발 작업에는 한 쌍 이상의 눈이 필요합니다. 사회적 거리두기 정책은 현대적인 애자일 개발에 필요한 많은 기술을 구현하기 어렵다는 것을 의미합니다. 일상적인 비디오 스탠드 업을 위해 Teams 또는 Zoom과 같은 회의 도구 옵션이 있지만 코드 검토, 쌍 프로그래밍 또는 공동 디버깅의 정기적 인 일대일 상호 작용을 복제하는 방법을 찾아야합니다.

GitHub Enterprise로 안전한 소셜 코딩

한 가지 옵션은 코드를 위해 GitHub와 같은 플랫폼으로 이동하는 것입니다. GitHub 작업이 출시되면 GitHub를 소프트웨어 개발 수명주기의 일부로 만드는 것이 훨씬 쉬워 져서 나머지 CI / CD (지속적 통합 / 지속적 전달) 파이프 라인과 통합 지점을 제공하고 최종 코드를 아티팩트 저장소에 전달합니다. GitHub의 계획된 NPM 인수를 통해 곧 단일 JavaScript 개발 파이프 라인을 구축 할 수 있습니다.

GitHub (및 기타 git 도구)는 소셜 코딩을위한 플랫폼을 제공하여 변경 사항을 더 잘 보이게하고 테스트를 코드 제출에 통합합니다. 집에서 작업 할 때 코드 리포지토리를 복제하여 동료의 작업에 액세스하고, 변경하고, 코드를 테스트하고, 로컬 빌드를 실행할 수 있으며, 풀 요청을 통해 코드를 메인 브랜치로 다시 공유 할 수 있습니다. 수천 개의 오픈 소스 프로젝트에서 입증 된 친숙한 작업 방식입니다. 코드 변경 사항을 볼 수 있으며 팀 구성원은 일반적인 보안 버그 또는 종속성 문제를 찾는 데 도움이되는 추가 도구를 사용하여 커밋에 대한 의견을 작성할 수 있습니다.

코드를 온 프레미스에 유지하는 것이 문제인 경우 규제 또는 지적 재산 보호 이유로 인해 GitHub Enterprise를 사용하여 자체 네트워크에서 GitHub를 실행할 수 있습니다. 싱글 사인온에 단일 회사 디렉터리를 사용하는 경우 개방형 SAML 인증 프로토콜 지원은 통합을 단순화하여 원격 사용자가 VPN에 로그인하여 작업을 시작할 수 있도록합니다. GitHub Enterprise Cloud는 동일한 보안 도구를 사용하여 GitHub 자체 인프라의 관리 형 서비스로 프라이빗 리포지토리와 함께 사용할 수 있습니다.

Visual Studio Live Share에서 코드 공동 작업

공유 코드는 하나의 옵션이지만 종종 직접 공동 작업이 필요합니다. 쌍 프로그래밍 및 기타 유사한 기술은 두 개발자를 동일한 키보드에 배치하여 문제를 해결하고 코드를 디버그합니다. 개인이 집에서 일할 때는 불가능합니다. 그러나 코드베이스를 서로 공유하여 IDE를 연결하여 같은 장소에 있지 않아도 공유 개발 경험을 제공 할 수 있습니다.

Visual Studio를 사용하는 경우 Visual Studio 플랫폼에 포함 된 강력한 공동 작업 도구 집합에 이미 액세스 할 수 있습니다. 한 가지 측면은 git 프로토콜 및 GitHub에 대한 지원입니다. 다른 하나는 코드 공유 도구 인 Visual Studio Live Share입니다. Windows 및 Macintosh의 전체 Visual Studio IDE에서 Visual Studio Code의 확장으로 사용할 수 있으며 새로운 웹 호스팅 코드 편집기에서 빠르고 쉽게 코드를 공유하고 공동 작업 할 수 있습니다.

라이브 공유 작업

Live Share를 시작하는 것은 비교적 쉽습니다. Visual Studio 2019에 Live Share 지원 워크로드 중 하나에 대한 지원을 추가하기 만하면됩니다. Visual Studio 2017을 사용하는 경우 먼저 Visual Studio 마켓 플레이스에서 확장을 설치해야합니다. 적절한 기능이 설치되면 Live Share 서비스에 연결하기 전에 Visual Studio를 다시 시작합니다. Live Share와 함께 기존 Visual Studio 계정을 사용하거나 Visual Studio와 Live Share를 별도로 유지하려는 경우 새 계정으로 로그인 할 수 있습니다. Visual Studio Code 작업은 매우 유사합니다.

로그인하면 정상적으로 프로젝트 또는 솔루션을 엽니 다. .gitignore공유하고 싶지 않은 폴더를 숨기려면 파일을 사용 하는 것이 좋습니다. 기본값은 공동 작업자에게 프로젝트의 모든 파일에 대한 액세스 권한을 부여하는 것입니다. 파일을 숨기거나 (게스트에게 표시되지 않음) 제외 할 수 있습니다 (디버거에서 파일로 들어갈 때 액세스 할 수 없음).

공유하려면 IDE에서 Live Share를 클릭하여 초대 링크를받은 다음 동료에게 보낼 수 있습니다. 세션은 읽기 / 쓰기가 필요하지 않습니다. 읽기 전용 일 수 있습니다. 이것은 코드베이스에 대한 안내를 제공하거나 코드를 통해 프로젝트를 처음 접하는 사람을 안내하고 각 모듈의 기능과 이유를 알려주는 데 유용한 옵션입니다. 공유 소유자는 공유 터미널을 열거 나 포커스를 설정하여 공동 작업자가 표시하는 코드 만 볼 수 있도록 할 수 있습니다.

선택한 개발 도구에서 디버그

공동 디버깅은 표준 Visual Studio 디버깅 도구를 사용하여 보안 코드가 호스트 컴퓨터에서만 실행되는 유용한 기능입니다. 공동 작업자는 자체 뷰어를 사용하여 디버깅 세션에 참여하여 디버깅 정보를 확인하고 애플리케이션 상태를 직접 조사 할 수 있습니다. 게스트는 관심있는 영역에 집중하기 위해 중단 점을 추가 및 제거 할 수 있지만 호스트 만 디버거를 단계별로 실행할 수 있습니다. 마찬가지로 웹 앱은 모든 사람이 자신의보기를 볼 수 있도록 게스트 컴퓨터의 안전한 환경에서 시작할 수 있습니다. 코드에 로컬 서버가 필요한 경우 머신간에 SSL 터널을 사용하여 공동 작업자와 공유 할 수도 있습니다.

Live Share의 주요 기능 중 하나는 IDE 독립성입니다. Windows PC에서 Visual Studio를 사용하거나 Mac 용 Visual Studio 또는 웹보기를 사용하고있을 수 있습니다. 모두 내 코드베이스에 액세스하고 변경 사항이 내 PC에 저장됩니다. 코드를 컴파일하고 실행하고 디버거에 액세스 할 수도 있습니다. 문제에 더 많은 눈이 필요한 경우 최대 30 명이 단일 Live Share 세션에 참여할 수 있으므로 문제 해결을 시도하고 해결하기 위해 임시 무리를 불러옵니다. 동일한 기술을 소규모 팀 또는 그룹 개발에 사용할 수 있으며, Live Share에 연결되면 개인이 특정 작업을 수행 한 다음 필요할 때 공동 작업자를 가져올 수 있습니다.

Visual Studio Live Share에서 누락 된 한 가지는 채팅 도구입니다. 토론 및 작업을 캡처하기 위해 세션을 중심으로 Skype 통화 또는 Teams 모임을 설정할 수없는 이유가 없습니다. Visual Studio Code 만 사용하는 경우 Live Share 구현을 사용하여 음성을 공유 할 수 있습니다. 그러나 빠른 공동 작업에는 더 좋습니다. 더 복잡한 상호 작용은 다른 도구에서 가장 잘 관리됩니다.

소셜 코딩 도구를 사용하면 사회적으로 고립 된 시간에 재택 근무를 할 수 있습니다. 코드를 공유하고 개발 환경을 공유하는 동시에 익숙한 채팅 및 공동 작업 환경으로 래핑 할 수 있습니다. 평상시처럼 비즈니스는 아니지만 적어도 우리가 어디에 있든 우리 코드를 최상으로 유지하는 방법입니다.