E
There's no such thing as "commit whole table". A modification is performed that affects x number of rows based on the WHERE clause. At end of transaction (end of statement unless you specified BEGIN tran and you now say COMMIT or ROLLBACK), the rows that were modified are committed or rolled back.
As for the possibility of a conflict. I can see two ways to seek answer:
Run a trace and see what SQL is submitted.
Try it.
I ran a trace and I didn't see anything at the T-SQL that protect you from the conflict.
When I tried it, however, when doing the modification as the "second person", I got a message in SSMS:
What SSMS did was to submit an UPDATE with a WHERE clause for each column (compare to the value when you read the row). If it got 0 rows back, it assumes that somebody else modified the row while we were lookin at it, and ask us that to do (I don't have the source code for SSMS, so this sentence is my assumption of how it does it). If we say "Yes", then it submits one more UPDATE with a WHERE clause just for the primary key column. Here are those two UPDATEs from my trace, the second one submitted after I answered "Yes" in above dialog:
exec sp_executesql N'UPDATE TOP (200) Sales.Customer SET TerritoryID = @TerritoryID WHERE (CustomerID = @Param1) AND (PersonID IS NULL) AND (StoreID = @Param2) AND (TerritoryID = @Param3) AND (AccountNumber = @Param4) AND (rowguid = @Param5) AND (ModifiedDate = @Param6)',N'@TerritoryID int,@Param1 int,@Param2 int,@Param3 int,@Param4 nvarchar(10),@Param5 uniqueidentifier,@Param6 datetime',@TerritoryID=5,@Param1=2,@Param2=1028,@Param3=1,@Param4=N'AW00000002',@Param5='E552F657-A9AF-4A7D-A645-C429D6E02491',@Param6='2014-09-12 11:15:07.263'
exec sp_executesql N'UPDATE TOP (200) Sales.Customer SET TerritoryID = @TerritoryID WHERE (CustomerID = @Param7)',N'@TerritoryID int,@Param7 int',@TerritoryID=5,@Param7=2