많은 프로그래머들이 왜 코드를 github으로 옮기고 있습니까?


114

지난 6 개월 이상 동안 나는 sourceforge.net에서 호스팅되는 많은 코드와 다른 호스팅 사이트 "Move to GitHub"를 보았습니다. 'Github로 이동'이라는 문구가 포함 된 Google 검색은 github으로 이동 한 텍스트가 포함 된 여러 결과를 반환합니다. 이것은 매우 혼란스럽고 왜 사람들이 정확하게 움직이고 있는지 궁금합니다. GitHub가 더 좋거나 내가 보지 못하는 특별한 이점이 있습니까?


16
또한 어떤 사이트도 github보다 코드와 쉽게 상호 작용하기가 쉽지 않다고 덧붙입니다. 대부분의 사이트는 여러 메뉴 뒤에 소스 코드를 숨 깁니다. Github에는 모든 정크가 없어도 프로젝트 홈에서 바로 할 수있는 다른 모든 작업에 대한 링크가 포함되어 있습니다 ( sourceforge 확인 ).
Xeoncross

2
나는 똑같은 것을 궁금해하고 있었고, 가입했고 곧 곧 팔렸다. 나는 모든 프로젝트를 전환하고 모든 고객을 선임했다.
lorddev

7
github이 좋은 곳이고 git이 cvs보다 낫기 때문에?

4
SourceForge는 개발자의 Windows 바이너리 릴리스에 애드웨어를 추가하기 시작했습니다. 한국의 SF 배포 서버 중 하나가 손상되었습니다.
Deer Hunter

1
Laucnpad는 소스를 숨기는 데 더 나쁜 범죄자입니다. 눈에 띄는 것은 "시리즈 및 이정표"-> 트렁크-> "이 시리즈의 코드 : 다음 분기는이 릴리스 시리즈의 기본 분기로 등록되었습니다 : lp : ~ USER / PROJ / trunk"-> 또 다른 메타 데이터 트렁크 페이지? 코드는 어디에 있습니까? 오 예,-> "코드 찾아보기"... 사실 이제 첫 페이지에 "코드 찾아보기"가 있다는 것을 알게되었습니다. 그러나 이와 비슷하지만 미묘하게 다른 메타 데이터 페이지는 모두 당황합니다.
Beni Cherniavsky-Paskin

답변:


102

이는 분산 버전 제어 시스템 으로의보다 광범위한 마이그레이션의 증상입니다 .

전통적으로 비 분산 VCS (예 : Codeplex & SourceForge)를 호스팅 한 일부 웹 사이트는 DVCS (예 : Git 또는 Mercurial)에 대한 지원을 추가하는 데 약간 느 렸습니다. 따라서 프로젝트에 DVCS를 사용하려는 사람들은 프로젝트를 지원하는 제공 업체 (예 : Github 또는 BitBucket)로 프로젝트를 마이그레이션해야했습니다. Github는 DVCS 지원을 제공 한 최초의 업체 중 하나이므로 당연히 많은 사람들이 코드를 활용하여 코드를 활용했습니다.

다른 웹 사이트는 이제 DVCS를 따라 잡기 시작했지만 (예 : Codeplex는 이제 Mercurial & Git을 지원합니다) 풀링 요청 및 포크 제출과 같은 기능면에서는 여전히 뒤쳐져 있습니다. DVCS Github 및 Bitbucket을 실제로 활용하는 것이 여전히 최고의 옵션입니다.


46
또한 GitHub의 기능 세트는 자체 호스팅을 포함하여 제공되는 다른 DVCS 호스트보다 훨씬 매력적으로 향상되었습니다. 따라서 대답의 일부는 GitHub이 섹시하다는 것입니다. :-)
Martijn Pieters

49
@MartijnPieters : ... BitBucket이 오랫동안 제공해 온 무료 개인 호스팅은 제외합니다.
Den

17
다른 웹 사이트는 DVCS를 제공합니다. SourceForge의 특별한 경우, 그 이유는 단순히 웹 사이트가 완전히 끔찍하기 때문에 지원되는 버전 제어 시스템을 신경 쓰지 않기 때문입니다.
Konrad Rudolph

17
@ Den Yea, BitBucket이 왜 인기가 없는지 잘 모르겠습니다. 그것은 개인 호스팅을 가지고 있으며 (나는 더 많은 의욕을 좋아하는) 당신이 힘내이나 의욕을 선택할하자
Earlz

11
Github와 Bitbucket은 서로 다른 두 가지 비즈니스 모델에서 작동합니다. Github은 거의 모든 기능을 무료로 제공하며 개인 저장소에 대한 비용을 지불 할 수 있습니다 ( .edu 이메일 주소를 가진 모든 사람에게 무료 청동 계획을 제공합니다) . 코드를 숨길 이유가 없다면 Github가 더 논리적 인 모델처럼 보입니다 .Bitbucket이 나올 것이라고 생각합니다 .Github의 기본 git GUI보다 Sourcetree를 더 좋아합니다. ) 중 하나를 사용합니다 ..
데이비드 한 Cowden

45

프로젝트 호스팅은 인프라입니다. 인프라는 네트워크 효과를 나타내므로 더 많은 사람들이 연결 될수록 인프라가 더욱 유용 해집니다. (특히 유용성은 O (number_of_connections)입니다. 즉, 개별 구성원의 경우 O (total_members)이고 전체 시스템의 경우 O (total_members ^ 2)입니다. 결과적으로 자연 독점 (natural monopoly)이라는 효과가 발생합니다. 즉, 모든 사람이 동일한 시스템을 사용할 때 유용성이 극대화되기 때문에 한 명의 경쟁 업체 만 생존 할 수있는 시스템에서는 자연 스럽습니다.

따라서 시장 리더 인 GitHub에 합류하는 것이 합리적입니다. 더 저장소, 더 많은 사용자, 더 가지 더 수정, 더 있습니다 모든 소스 포지 (SourceForge), Google 코드 및 코드 플렉스에 비해 GitHub의에 결합 된 .

물론 흥미로운 질문은 네트워크 효과가 시장 리더가 자동으로 자연 독점을 얻는다는 것을 의미한다면, GitHub가 어떻게 SourceForge를 파괴 할 수 있었습니까?

이에 대한 해답은 너무 작은 인프라로 인해 훨씬 ​​더 작은 인프라에 가입하는 것이 초기 채택 자에게는 그만한 가치가있었습니다.

  • GitHub는 Git 호스팅을 SourceForge의 기능 (또는 대부분의 사람들이 사용한 SourceForge의 최소한 일부)과 비슷한 기능으로 최초로 제공했습니다.
  • GitHub는 UI 관점에서 멋있었습니다. 매끈하고 현대적인 웹 UI
  • GitHub는 기술적으로 훌륭했습니다 : Ruby on Rails, Sinatra, Erlang, node.js
  • GitHub는 소셜 코딩 및 프로젝트 사용자에 중점을 둔 웹 2.0이었습니다.

6
네트워크 효과 설명은 +1입니다. 하지만 ... 정말 ... 소스 포지가 갑자기 만연 마이그레이션하기 전에 Github에서보다 훨씬 더 큰 생각과 거의 Github의 직원 같은 소리
Chibueze Opata

2
또한 Windows 클라이언트 용 GitHub 의 생성을 고려하십시오 . 처음으로 Windows 개발자는 소스 제어를 위해 Git을 사용할 때 2 등 시민이 아닌 것 같습니다.
Carson63000

25

이유 중 하나는 독자가 다르다고 생각합니다. sourceforge는 주로 응용 프로그램 을 호스팅하기위한 것입니다. 아마도 프로젝트 페이지의 가장 두드러진 특징은 컴파일 된 실행 파일 (또는 다른 다운로드)에 대한 링크 일 것입니다. 즉, 개발자가 아닌 사용자를 대상으로 합니다 .

반면에 github은 주로 소스 코드 를 호스팅하기위한 것이며 프로젝트 페이지에서 가장 두드러진 특징은 master지점의 디렉토리 목록입니다 . 사용자가 아닌 개발자 (프로젝트의 코드를 수정하거나 사용하려는)를 대상으로 합니다.

이것이 개발자 대상 도구와 라이브러리가 github으로 이동하는 이유 중 하나라고 생각합니다.


15

Sourceforge 도 Git을 제공 하지만 Github는 (현재) 더 잘 수행합니다.

  • 풀 요청 시스템은 훌륭하게 작동합니다 (예를 들어 Gitorious보다 훨씬 낫습니다).
  • 최근에 업그레이드 된 알림은 매우 편리합니다.
  • 그들은 즉시 코드를 보여줍니다

제 생각에 그들의 살인자 기능 은 "네트워크 그래프"입니다.

여기에 이미지 설명을 입력하십시오

차이점 gitk: 또한 다른 사람들의 지점에서 가지를 당길 필요가 없음을 보여줍니다. 이는 공동 작업 할 때 매우 중요합니다.


10
+1 우리는 결국 그래프가 모두 중요하다는 것을 알고 있습니다.
Xeoncross

2
가장 많이 유지 관리하는 지점을 찾는 것도 환상적입니다. 나는 최근에 어떤 저장소의 어떤 포크가 실제로 유지되는지를 찾아야했습니다 (최신 포크가 아직 Google 검색의 상단에 떠 있지 않았기 때문에 사소하지 않습니다).
beatgammit

1
또한 github이 클론 통계를 표시 할 수있는 것처럼 보이지만 sourceforge에서 단일 방법을 찾을 수는 없습니다. (
Aquarius Power

11

GitHub는 간단하고 사용하기 쉽고 시작하기 쉽고 강력하며 멋지게 보이며 웹 2.0 버전입니다.

GitHub를 사용하고 있으며 일련의 메뉴 뒤에 숨겨져 있고 설정 작업을 위해 상당히 정교한 작업이 필요한 SourceForge보다 사용하기가 훨씬 쉽습니다. 저는 프로그래머입니다.

또한, 개인이 첫 번째 오픈 소스 프로젝트를 어딘가에 게시하려고하는지 또는 상업적 (비공개) 프로젝트에서 공동 작업을 원하는 팀이든, GitHub은 거의 모든 사람에게 완벽하게 완벽하게 "확장"합니다 사용 사례.

하루가 끝나면 인간 심리학에 대해 생각합니다. 제품이 사용하기 쉽고, 사용하기 쉽고, 저렴한 (또는 무료) ... 외관이 좋으며 친구에게 추천 할만한 것입니까? GitHub의 경우 모든 질문에 예라고 대답합니다.


Google 코드를 사용하면 이슈에 별표를 표시하여 개발자에게 커뮤니티에 중요한 이슈를 알려주고 진행 상황을 추적 할 수 있습니다. Github은 익명으로 만 팔로우하는 것으로 보이며 스팸으로 댓글을 달 수 있습니다 (+1, 나 등). 리소스가 제한적인 인기있는 프로젝트에 중요합니다.
beatgammit

5

또한 아직 언급하지 않은 github에서 제공하는 꽤 스매싱 기능을 고려해야합니다.

  • github 플레이버 마크 다운이있는 github 페이지
  • github 모바일 앱
  • github 이클립스 플러그인
  • Mac 용 github
  • github 채용 공고
  • Windows 용 github
  • github 티켓팅 / 버그 추적 시스템
  • 완벽한 타사 통합을 가능하게하는 github 개발자 API
  • 잦은 UI 업데이트 / 향상 (문자 그대로 하루에 다음에 변경되는 내용을 볼 수 있습니다. 즉, 검색 텍스트 상자가 이제 동적으로 초점이 확장되고 시계가 새로운 별표가 된 것 등)
  • github 요지 (유틸리티 스크립트, 짧은 코드 스 니펫 등에 적합)
  • 허브 를 통한 완벽한 github 통합

다른 사이트에는 이러한 기능이있을 수 있지만 모든 사이트가없는 사이트는 확실합니다.

이 사람들은 거의 모든 곳에서 웹과 데스크톱에 기술적 인 이점을 느리게 분산시킵니다. 우리가 말하면서 그들은 점점 더 커지고 있으며 최고의 엔지니어를 고용하고 있습니다 (마이크로 소프트에서 Phil Haack을 훔칠 수도있었습니다 ...).


4

GitHub에 추가 개발자를 끌어들이는 또 다른 이유 중 하나는 개발자 도구가 git을 수용하기 시작했으며 Eclipse와 같은 플랫폼은 이제 즉시 Git 지원 기능을 내장하고 있기 때문입니다 (Java, C ++ 개발자 등의 패키지에 적용됨). 프로젝트를 GitHub에 업로드하는 데 걸리는 단계가 줄어 듭니다.


1
Git 지원을 추가 한 또 다른 IDE는 Visual Studio 버전 2013 이상입니다. 자세한 내용은 msdn.microsoft.com/en-us/library/hh850437.aspx 를 참조하십시오
Bernard Vander Beken

-1

솔직히 말해서, Git의 가장 중요한 것은 내가 볼 때 나 자신을 위해 : 1. 네트워크 그래프 또는 내가 역사를 불러야한다 (또한 논평) 2. Branch and Pull Request 3. 더 강력하고 사실이라고 말할 것입니다. 내 모든 일을 담당하는 비서가있는 것 같은 느낌이 들며, 그 초에게 나에게 무엇이든, 변화, 모든 것을 적어 놓으라고 말할 수있다! 4. 롤백하기 쉽다

그냥. 그것을 사용하여 섹시한 느낌


어, 왜 내가 아래에있어?
Benyamin Limanto 2016 년

질문에 답변하려는 의도가 좋았지 만 OP가 요청한대로 답변이 답변에 많은 도움이된다고 생각하지 않습니다. "프로그래머가 왜 코드를 github로 옮기는가?"에 대한 답인 것 같습니다. "나는 그것을 좋아하기 때문에"입니다. 여기에 다른 답변이 더 좋을 수 있으며 누군가가 다운 투표 한 이유입니다.
Frank Bryce
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.