commit fd44090b628aa7213949d0e8bcc696bf651aaa91 from: Stefan Sperling date: Thu Aug 26 19:53:20 2021 UTC tweak the man page section about 'got send' In particular, attempt to describe the -f option better. commit - 1bd76734ce8e567c3f156533dc1af31878bd5a65 commit + fd44090b628aa7213949d0e8bcc696bf651aaa91 blob - 6ccabbd90628971c00ab688ca261da4cece4f330 blob + aa096ed40c012c18fbbf8cd57b832e5207e8497d --- got/got.1 +++ got/got.1 @@ -1395,14 +1395,18 @@ the commits which have been sent. .Pp By default, changes will only be sent if they are based on up-to-date copies of relevant branches in the remote repository. -If any changes to be sent are based on out-of-date copies, new changes -must be fetched from the server with +If any changes to be sent are based on out-of-date copies or would +otherwise break linear history of existing branches, new changes must +be fetched from the server with .Cm got fetch and local branches must be rebased with .Cm got rebase before .Cm got send can succeed. +The +.Fl f +option can be used to make exceptions to these requirements. .Pp The options for .Cm got send @@ -1448,10 +1452,15 @@ may become subject to deletion by Git's garbage collec the server. .Pp Requesting deletion of branches results in an error if the server -does not support this feature. +does not support this feature or disallows the deletion of branches +based on its configuration. .It Fl f -Attempt to force the server to accept uploaded branches or tags in -spite of failing client-side sanity checks. +Attempt to force the server to overwrite existing branches or tags +in the remote repository, even when +.Cm got fetch +and +.Cm got rebase +would usually be required before changes can be sent. The server may reject forced requests regardless, depending on its configuration. .Pp