add -l flag to hg gofmt.
don't apply gofmt to non-go files during upload check.

R=r
http://go/go-review/1016048
diff --git a/lib/codereview/codereview.py b/lib/codereview/codereview.py
index 457b183..0e71a69 100644
--- a/lib/codereview/codereview.py
+++ b/lib/codereview/codereview.py
@@ -562,8 +562,8 @@
 
 # Check that gofmt run on the list of files does not change them
 def CheckGofmt(ui, repo, files):
-	f = [f for f in files if f.endswith('.go')]
-	if not f:
+	files = [f for f in files if f.endswith('.go')]
+	if not files:
 		return
 	cwd = os.getcwd()
 	files = [RelativePath(repo.root + '/' + f, cwd) for f in files]
@@ -761,7 +761,10 @@
 	cwd = os.getcwd()
 	files = [RelativePath(repo.root + '/' + f, cwd) for f in files]
 	try:
-		if os.spawnvp(os.P_WAIT, "gofmt", ["gofmt", "-l", "-w"] + files) != 0:
+		cmd = ["gofmt", "-l"]
+		if not opts["list"]:
+			cmd += ["-w"]
+		if os.spawnvp(os.P_WAIT, "gofmt", cmd + files) != 0:
 			raise util.Abort("gofmt did not exit cleanly")
 	except error.Abort, e:
 		raise
@@ -1026,7 +1029,9 @@
 	),
 	"^gofmt": (
 		gofmt,
-		[],
+		[
+			('l', 'list', None, 'list files that would change, but do not edit them'),
+		],
 		"FILE ..."
 	),
 	"^pending|p": (