Programing

TortoiseGit 대 Git 확장

lottogame 2020. 10. 16. 07:00
반응형

TortoiseGit 대 Git 확장


Windows 기반 OS에서 Git Extensions 또는 TortoiseGit을 사용하면 어떤 이점과 단점이 있습니까?


나는 GitExtensions를 모르지만 TortoiseGit과의 경험을 공유 할 수 있습니다 (marc_s의 의견에 의해 암시 됨).

장점 :

  • Windows와의 뛰어난 통합 (셸 확장)
  • TortoiseSVN과 거의 동일한 UI (이미 TortoiseSVN을 사용한 경우 예상되는 내용을 알고 있음).

단점 :

  • git 사용법을 이해 하기 어려울입니다.

TortoiseGit의 문제는 TortoiseSVN과 함께 일한 사람들이 모든 것이 SVN에서와 똑같이 작동 것이라고 생각 하고 결국 git로 작업하는 방법을 전혀 이해하지 못한다는 것입니다. 개인적인 경험으로 제가 일하는 회사는 2 년 후 SVN에서 git로 마이그레이션했고 TortoiseGit을 사용한 모든 개발자는 결국 자신이 무엇을하고 있는지 알지 못하고 때때로 로컬 저장소를 망가 뜨 렸습니다. 결국 그들은 TortoiseGit을 버리고 git "어려운 방법"(Windows의 쉘, msysGit)을 배우는 데 시간을 보냈으며 그 이후로 모두가 행복했습니다.

결론 : msysGit을 직접 사용하고 git을 올바르게 배우십시오. 앞으로 많은 두통을 피할 수 있습니다.


우리 회사는 두 가지를 모두 시도하고 Tortoise Git을 빠르게 삭제했습니다. 훨씬 더 자주 추락했습니다. 코더들은 Tortoise Git이 충분히 가능하지 않다고 주장하지만 직접 확인하지 않았습니다. 그러나 나는 많은 충돌을 직접 보았다.

Coder는 git bash를 선호하고 다른 사람들은 git Extensions를 사용하지만 싫어합니다. 그들 중 일부조차도 git bash를 추가로 엽니 다. Git bash는 진행률 카운터를보기 위해 불가피합니다.

Git Extensions에는 가져 오기 중에 진행률 카운터를 표시하는 옵션이 없습니다. 따라서 Git 확장 만 사용하면 진행 상황과 실패 여부를 알지 못하는 수수께끼의 진행률 표시 줄 앞에 앉아 있습니다. 최악의 경우 암호가 누락되거나 잘못된 것입니다. Git Extensions를 사용하면 시간이 많이 걸리는 작업을 수행하는 것처럼 빛나는 막대를 표시하여 영원히 기다릴 수 있습니다. Git Extensions의 또 다른 공포는 많은 큰 파일의 버전을 관리하고 rebase로 가져올 때 "메모리 부족"으로 자주 중단된다는 것입니다. 이러한 중단 후 코딩을하지 않는 사용자는 항상 문제에 압도 당합니다. 변경하지 않은 많은 파일은 변경된 것으로 표시되며 잠금 파일은 문제 등을 처리하지 못하게합니다.

제 생각에는 두 GUI 도구 모두 미성숙합니다.


한 가지 중요한 이유로 Git 확장을 원합니다. 커밋 로그의 그래픽보기를 보여줍니다 (아래 참조). 그래픽 뷰가 없으면 git을 처음 접하는 대부분의 사람들이 브랜치, 커밋, 리베이스, 체리 따기 등에서 무슨 일이 벌어지고 있는지 알지 못할 것이라고 생각합니다.

명령 줄에서도 일부 작업을 수행하고 싶을 것입니다. 모든 도움말이 명령 줄을 기반으로하기 때문에 실제로 git을 사용하는 것이 가장 좋습니다.

즉, 모두 동일한 명령 줄 실행 파일을 호출하고 동일한 git 저장소에서 작동하므로 Tortoise Git도 사용할 수 있습니다 (작동한다고 가정).

대부분의 IDE에는 git 지원도 있으며 JetBrains IDEA는 그 위에 변경 목록 및 기타 기능을 추가하는 훌륭한 작업을 수행합니다.

Git 확장 로그보기


TortoiseGit에 대한 경험은 많지 않지만 설치했으며 현재 GitExtensions v2.21을 사용하고 있습니다.

GitExtensions 사용의 가장 큰 장점 :

  • 탭에서 모든 필수 정보를 사용할 수있는 코드 라인 및 브랜치의 시각적 gitk와 같은 그래픽 디스플레이를 통해 비우호적 인 SHA로 작업 할 필요가 없습니다.
  • 같은 PC에 관리자로 설치하고 다른 모든 사용자가 일반 사용자처럼 사용할 수 있습니다.
  • Windows 탐색기와 기본 제공 셸 통합
  • Visual Studio와의 즉각적인 통합 (Windows Eclipse 사용자는 GitExtensions의 필요성을 대체 할 자체 GUI가 있으므로 msysgit 만 필요)
  • 즉시 시작하는 데 필요한 모든 필수 기능과 함께 사전 패키지로 제공되는 사용하기 쉬운 설치 프로그램 (SSH 클라이언트, KDiff, msysgit).
  • GitHub와 통합 (포크, 클론, 풀이 모두 간소화 됨)

단점 :

  • 문서는 지속적으로 추가되는 새로운 기능을 따라 가지 못합니다. 예를 들어, 스크립팅 기능을 사용하는 방법을 아직 모릅니다.

완전 무료 프로그램이라는 사실을 잊어 버리지 않고 아무런 조건없이 우리에게 옵션으로 제공된다는 사실을 잊지 않도록, 마치 우리가 유료 고객 인 것처럼 높은 기대치에 대한 근거가 보이지 않습니까? 이전 사용자가 언급 한 중단 및 정지 중 일부를 보았지만 그 중 대부분은 v2.24에서 수정되었다고 생각합니다. 많은 중단 및 실패한 작업은 실제로 GitExtensions의 결함이 아니지만 GitExtensions 외부의 시스템 문제 (예 : 잘못 구성된 SSH 설정, 원격 저장소를 호스팅하는 서버의 파일 권한 문제 등)의 증상입니다. 예를 들어, 한 번은 실패 및 중단을 유발하는 간단한 푸시를 수행했습니다. 내가 푸시하려고 한 리모컨이 매우 긴 경로 이름에 있었기 때문에 저장소를 호스팅하는 Mac 서버에 문제가 발생했습니다.

어쨌든 GitExtensions에 대한 나의 경험은 상당히 긍정적이었습니다. 위에 설명 된 이점으로 인해 버그가 수정 될 때까지 가끔 중단 및 중단되는 것을 참을 가치가 있습니다.


Git Extensions를 사용한 적이 없어서 말할 수 없습니다. 순수한 GIT에 몇 가지 문제가있었습니다. 예를 들어 GVIM을 통합 할 수 없습니다. Tortoise Git에는 통합 된 편집기 및 diff 도구 (놀라운)가 있으므로 매우 편리합니다. 저는 Scott Chacon 책의 브랜치 다이어그램을 좋아했고 TGit이 비슷한 다이어그램을 가질 수 있기를 바랐습니다. 그들은 가지를 보여주는 도구가 있지만 책에 나오는 것만 큼 좋지는 않습니다.

명심해야 할 점은 TGit은 GIT의 셸일 뿐이므로 두 가지 방법을 혼합해도 아무런 문제가 없습니다. 나는 대부분의 모든 것에 TGit을 사용하지만, 어색하거나 단순히 TGit에서 잘 이해하지 못하는 명령에 대해서는 GIT를 사용합니다. 그러나 TGit을 사용할 계획이더라도 위에서 언급했듯이 GIT의 기본 사항을 먼저 이해하는 것이 여전히 중요합니다. 나는 Chacon 책 ( http://progit.org/book/ 에서 무료로 온라인 으로 구입하거나 Amazon에서 구입하여 사용할 수 있음)의 첫 번째 장을 읽었습니다 . 당신이 나와 같다면 패러다임이 가라 앉도록 여러 번 읽어보고 싶을 것입니다. 그렇게 복잡하지는 않지만 이전 VCS와는 매우 다릅니다.

TGit never crashed on me, as it has for some of the other reviewers, but then my repo's have been small. It did eat my commit comments on more than one occasion, which could have been user error. Since you can go back and re-edit comments this was just an annoyance and worth the convenience of having a GUI, with windows that show a great deal of info at a glance.


Just to counter some of remarks above:

With the correct expectation, TortoiseGit provides an excellent gui for working with git on Windows. It is not a replacement for TortoiseSvn, but an improved gui over what one can achieve using gitk + git-gui (which can be considered part of core git functionality and accessible in msysgit). The only bad thing I see is how you would not need to remember all the exact commands for checkout/rebase/merge etc, since it is possible to do all that very conveniently through the gui (which is the whole point). The putty/ssh problems have more to do with the inferior support for ssh on Windows, and are not unique to TortoiseGit.


I use GitExtensions. I haven't used TortoiseGit but one of our other developers loves it and refuses to use GitExtensions. His reasoning is 1) It's familiar; 2) It has great Windows Explorer integration.

Using GitExtensions I tend to use the Windows Explorer integration for three things only:

1) To create a new local repository (context menu item Git Init Here, which is actually a Git for Windows command; GitExtensions sits on top of Git for Windows);

2) To open the Git Extensions GUI (the browse window);

3) To clone a remote repository down to a local repository (context menu item Git Extensions > Clone).

For pretty much everything else I just have the GitExtensions GUI up and work from there.

The developers of GitExtensions claim that almost any command can be executed from the GUI. This is not quite true but I find I only need to drop into the command line interface about once or twice a month for complex tasks.

In some cases the GUI makes complex tasks simple by hiding the complexity of the underlying Git commands. This sometimes involves combining several Git commands into a single action. eg Creating submodules where the GUI combines adding a submodule, initializing it and updating it into a single action. In another case, the GUI simplifies a task by providing a command which Git lacks - removing a submodule (in Git you have to manually edit the various files such as .gitmodules and .git/config to remove a submodule). I'd be interested to know if TortoiseGit simplifies complex tasks in a similar way.

GitExtensions also has fairly basic Visual Studio integration. Don't know if TortoiseGit does. There is a separate Git Source Control Provider for Visual Studio 2008 and 2010 which provides much more extensive Visual Studio integration. However, having installed the Git Source Control Provider I find I never use it. The only GitExtensions integration I use from Visual Studio is on the toolbar, to open the GitExtensions GUI with the appropriate repository. I'll work with Visual Studio on one monitor and GitExtensions open in the other.

From at least version 2.32 GitExtensions shows the number of uncommitted files in its toolbar. I previously used 2.24 which didn't have this feature and it's very handy. Gives instant feedback on whether there are any uncommitted changes or not.


For fast and easy compilation, customization, and building extensions, GitExtensions is better (C#) than TortoiseGit (Visual C++ MFC)

For portability, GitExtensions is better (.NET on Windows / mono on Linux/Mac) than TortoiseGit (Win32/64 only)

To use icon overlay in Explorer, use TortoiseGit

For performance of some features, TortoiseGit is better because it calls static / dynamic library to retrieve the result from the repository, while GitExtensions only invokes git.exe command line which has larger overhead.

To migrate from TortoiseSVN, TortoiseGit will be more familiar with than GitExtensions


DATE: 2011-08-27.

At this point, Tortoise Git DOES NOT WORK at all, and the issue on the google code site has not received attention in a month: http://groups.google.com/group/tortoisegit-users/browse_thread/thread/9090337b7936e1e1 .

The box 'Load Putty Key' from the popup on Tortoise Git's first usage to clone a site (and start developing) is grayed out. So no private key is found, and the error message is 'connection dropped' SUCCESSFUL!!!!

Git Bash works perfectly, albeit console based. And if everyone above talks about not understanding the Git concept when using Tortoise Git, I'd just stay away from it based on that, even not taking into account the last 3 hours I spent trying to get Tortoise Git working for a developer. He's going to have to learn console Git, or go down the road.

15 분 만에 작업을했고 프로그래머를 고용하려는 해커 일뿐입니다 ;-)

추신, 이클립스는 세 가지 주요 버전 관리 저장소 '커넥터'를 모두 사용할 수 있으며 매우 훌륭한 편집기입니다.

참고 URL : https://stackoverflow.com/questions/6011893/tortoisegit-vs-git-extensions

반응형