delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2018/03/20/20:25:22

X-Recipient: archive-cygwin AT delorie DOT com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:from:to:subject:date:message-id:references
:in-reply-to:content-type:content-transfer-encoding
:mime-version; q=dns; s=default; b=e0wmeZmPabH7WdRNH/IGxLRVNxtyc
YA7FpGsLToLl+BRWpFGK73KxUJIfTQ0zlc23JuWcEC5w4C/r/mO/Jisuap4oTdl1
f2PbQQDOYTC3p9L4o0Q8lEGMkVewL8+DT7x59vbIrknG6ywYtrK5GY9/6AqNBJpG
v7QsqbBKHpFf+8=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:from:to:subject:date:message-id:references
:in-reply-to:content-type:content-transfer-encoding
:mime-version; s=default; bh=zO3vBOEET+FxZpI85T3H1NEdw2k=; b=Rqo
NOQHBJny81xbJq21/nVGS7N2H5Pu80uNyV3e/CQ0RN2Twm0m3lNTSbaFZVvtr5tH
pId0UGvFq9m9rcPQojhDbNMt1BVWcaulBONflOkR6TENh9ENg7iWuQVfDv3CAWn/
r5apBHGzzBPJy3ztOY+Wh+hNVoSluaqf8idRlFNc=
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=-0.9 required=5.0 tests=BAYES_00,KAM_LAZY_DOMAIN_SECURITY,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS autolearn=no version=3.3.2 spammy=channel, H*r:10.152.75, H*r:sk:CY1NAM0, relationship
X-HELO: NAM02-CY1-obe.outbound.protection.outlook.com
From: Tony Kelman <tony AT kelman DOT net>
To: "cygwin AT cygwin DOT com" <cygwin AT cygwin DOT com>
Subject: Re: GitForWindows vs. Cygwin
Date: Wed, 21 Mar 2018 00:24:58 +0000
Message-ID: <DM5PR22MB025047603811CBA882A0DDC4A7AA0@DM5PR22MB0250.namprd22.prod.outlook.com>
References: <587wcTwzy5968Set DOT 1521586344 AT web02 DOT cms DOT usa DOT net>,<324994357 DOT 20180321024235 AT yandex DOT ru>
In-Reply-To: <324994357.20180321024235@yandex.ru>
x-incomingtopheadermarker: OriginalChecksum:C83EA8563E4388B99AEA0E93A1F62C28168A5E256A407D32569DF5CECDF41CE0;UpperCasedChecksum:60152C60A9806EC23AFCD3817E75D58BDB441E78470AB32947446733287BFA97;SizeAsReceived:6978;Count:46
x-ms-exchange-messagesentrepresentingtype: 1
x-tmn: [vCkxXhokmiN+chMSuM7RdRlCaNuBmFJ3]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1;CY1NAM02HT009;6:HabovGpNCS/8NKDHk19DWp/ZYkgjIgKxd3uq1qT6YVWJ2+68tY7VD378h92k57s5hAcZDiJCvvZDkMOf2uYAG8SAzUMFNfDrUTv2mF/QYL2dYn4ODIUFwTyhJQyuxUVL4KxUGS8YibADb0y/N56DoP3Fg78VQXoDMeW6hwkITu1qg3iP5y8Z0Wa2X1LKTARBYCLC0G4T+DqrseYmqJkNi/wqOWhSa6oyuAav01WP/aNv4dgI+C+4LViYv1EpzaeQVIkAwLOY8G9IznzJdERMvvppa4a1CuJ4nEhcfSSo3pJKAgzZ7agg8+eU/ltBLIJtqGD9sxLiATREJikUTSDvnYhQH6gib43Lo2NtLJmS3Ms=;5:aOybnqA8dOIdXhDxPzM2VYnCuEHI35KeRtzT4c9sibBp6RDD97MAmFPWsLeiPvxLCvgppjWj/OM2mYWCdqVsRCnW4yvhPB48zgdDdJoGl5d7uEWnu64IudoqPVE7mWpDUcFhfgveQUSWphqvItcNznO4lU4tyZGajzBk/q21gzo=;24:EJAUeketCr2KmkN13gDkO2xrJDQ5QoMTCbfqKtXquQzF+0lhnW+isBo3UlHH5544XLgoV/CLoay2ShjO/OMkWQzxvJQvoJb8x6NMebx7th4=;7:9tRm7zdcTvYMSZJN622NQrNCKABeJZOur3CAy1wnwpLt8y9s5CzIcMbsxJGMsxjxlbsKqiMLaNW/PwKbX7kI4XDa72sLUOflw5O/3wrDdwsQMfG2ASrqkHNgFhNTjIbVj6Kn6ojwQnaUhoe+YlaalhsMlMSkI13u+Ve9mjcVIfx0F03IgVv6Dz6ApQPaEExlZHtWhUtQPvRcsRsyVMNXrGJAdcQnomg4T2xjpMOvFMhrZlDduCzB/bB1W/sB/UvY
x-incomingheadercount: 46
x-eopattributedmessage: 0
x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(201702061078)(5061506573)(5061507331)(1603103135)(2017031320274)(2017031324274)(2017031323274)(2017031322404)(1601125374)(1603101448)(1701031045);SRVR:CY1NAM02HT009;
x-ms-traffictypediagnostic: CY1NAM02HT009:
x-ms-office365-filtering-correlation-id: b53807e8-d846-40ef-208f-08d58ec22e11
x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(444000031);SRVR:CY1NAM02HT009;BCL:0;PCL:0;RULEID:;SRVR:CY1NAM02HT009;
x-forefront-prvs: 0618E4E7E1
x-forefront-antispam-report: SFV:NSPM;SFS:(7070007)(98901004);DIR:OUT;SFP:1901;SCL:1;SRVR:CY1NAM02HT009;H:DM5PR22MB0250.namprd22.prod.outlook.com;FPR:;SPF:None;LANG:;
x-microsoft-antispam-message-info: tXmFcsJwy78MAynPJzlYPv29KEgDEfAH3rEVcziLGfqHoCpb/gZaGc+t//8IelgOt2QTxMgwgiN7zl9DdJ3hLBRVAIqC82vLAID7Wj37OBidcKtludPJHryPIrLERy08FiKursTHxb4VidY+hxtXMq5Z3Y5z4l6cEzlnOdTTHgriv9/akZJDBdesuc/6quoY
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-OriginatorOrg: outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b53807e8-d846-40ef-208f-08d58ec22e11
X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Mar 2018 00:24:58.9685 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Internet
X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1NAM02HT009
X-IsSubscribed: yes
X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id w2L0PKOf006822

>> Can anyone enlighten me about the relationship of "Git for Windows" to
>> Cygwin?
>
> They are not related.

Yes, they are.

>> But now I hear of this GitForWindows thing.  Which seems to have replaced
>> MSysGit, with a GUI thrown in.  But is it _still_ a stale fork of Cygwin, or a
>> fork at all?  Is it descended from MSysGit?  I have been googling all over,
>> but not finding good answers.

GitForWindows 2.x is based on MSYS2, which doesn't share any non-cygwin
code with the old MSYS1 as far as I'm aware, but it reimplements (on
top of a much more up-to-date fork of cygwin) the path-mangling trick
that was the main motivating factor for using MSYS1 in the first place.
When you have a non-cygwin windows executable (one compiled by mingw.org,
or mingw-w64, or MSVC compilers) and try to pass it a posix/cygwin-style
absolute path, the windows executable won't usually recognize it as a
file that exists. What the MSYS shell does is apply a heuristic that
automatically translates posix-style absolute paths to Windows paths
(similar to manually calling `cygpath -w /posix/style/path` on each
argument within cygwin) before passing the argument to the executable.
There are other differences between MSYS2 and Cygwin, mostly that it
uses a different package manager and repository, but these are less
significant with respect to GitForWindows' requirements.

The git.exe in Cygwin's git package is a cygwin executable compiled
by cygwin's gcc. Hence it understands posix-style paths just fine,
but it depends on cygwin1.dll to do so, and may not perform as well as
a non-cygwin Windows executable. (Maybe someone has benchmarked this.)

GitForWindows has historically been compiled using mingw gcc -
the legacy and now-mostly-obsolete mingw.org in the git 1.x timeframe
(this is the reason there was not a 64 bit version of git.exe through
that release channel at the time), and more recently the mingw-w64
compilers for git 2.x. Many of your questions are answered at
https://github.com/git-for-windows/git/wiki/FAQ#what-is-the-relationship-between-git-for-windows-and-msysgit
https://github.com/git-for-windows/build-extra#components-of-the-git-for-windows-sdk
https://www.msys2.org

Some components used by git (any shell scripts, for example) require
some form of posix compatibility layer to function. The recent MinGit
has a busybox-based variant that can mostly avoid MSYS2 dependencies,
though it seems to have at least some small MSYS2 pieces remaining:
https://github.com/git-for-windows/git/wiki/MinGit#experimental-busybox-based-mingit

You can see exactly how the MSYS2 runtime used by GitForWindows differs
from the version used by the MSYS2 project itself by looking at the
git repo at https://github.com/git-for-windows/msys2-runtime/commits/master
and how MSYS2 differs from upstream cygwin by looking at the repos at
https://github.com/Alexpux/Cygwin/commits/msys2-master
https://github.com/mirror/newlib-cygwin/commits/master
https://github.com/mirror/newlib-cygwin/releases

These "patch sets" tend to get rebased pretty frequently when new
cygwin releases come out upstream.

I dunno where else this history has been written down, but this is
my understanding of the development heritage. Any git and/or MSYS2
maintainers can correct me if anything I stated here is incorrect.

-Tony

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019