The COMMIT answer is not really the COMMIT you think. See COMMIT WORK
COMMIT [WORK] [; ]
Note
This statement functions identically to COMMIT TRANSACTION, except that COMMIT TRANSACTION accepts a user-defined username. This COMMIT syntax with or without the optional WORK keyword is compatible with SQL-92.
So COMMIT COMMIT WORK, COMMIT TRANSACTION.
ROLLBACK [ WORK ]
BEGIN TRANSACTION gbn
SELECT 1
COMMIT gbn
GO
BEGIN TRANSACTION gbn
SELECT 2
COMMIT TRAN gbn
GO