transport-helper: change import semantics

Currently the helper must somehow guess how many import statements to
read before it starts outputting its fast-export stream. This is
because the remote helper infrastructure runs fast-import only once,
so the helper is forced to output one stream for all import commands
it will receive. The only reason this worked in the past was because
only one ref was imported at a time.

Change the semantics of the import statement such that it matches
that of the push statement. That is, the import statement is followed
by a series of import statements that are terminated by a '\n'.

Signed-off-by: Sverre Rabbelier <srabbelier@gmail.com>
Acked-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
3 files changed
tree: c00f818e0fd691c9ddfd3838b85f30a2356061a7
  1. block-sha1/
  2. builtin/
  3. compat/
  4. contrib/
  5. Documentation/
  6. git-gui/
  7. git_remote_helpers/
  8. gitk-git/
  9. gitweb/
  10. perl/
  11. po/
  12. ppc/
  13. t/
  14. templates/
  15. vcs-svn/
  16. xdiff/
  17. .gitattributes
  18. .gitignore
  19. .mailmap
  20. abspath.c
  21. aclocal.m4
  22. advice.c
  23. advice.h
  24. alias.c
  25. alloc.c
  26. archive-tar.c
  27. archive-zip.c
  28. archive.c
  29. archive.h
  30. attr.c
  31. attr.h
  32. base85.c
  33. bisect.c
  34. bisect.h
  35. blob.c
  36. blob.h
  37. branch.c
  38. branch.h
  39. builtin.h
  40. bundle.c
  41. bundle.h
  42. cache-tree.c
  43. cache-tree.h
  44. cache.h
  45. check-builtins.sh
  46. check-racy.c
  47. check_bindir
  48. color.c
  49. color.h
  50. combine-diff.c
  51. command-list.txt
  52. commit.c
  53. commit.h
  54. config.c
  55. config.mak.in
  56. configure.ac
  57. connect.c
  58. convert.c
  59. copy.c
  60. COPYING
  61. csum-file.c
  62. csum-file.h
  63. ctype.c
  64. daemon.c
  65. date.c
  66. decorate.c
  67. decorate.h
  68. delta.h
  69. diff-delta.c
  70. diff-lib.c
  71. diff-no-index.c
  72. diff.c
  73. diff.h
  74. diffcore-break.c
  75. diffcore-delta.c
  76. diffcore-order.c
  77. diffcore-pickaxe.c
  78. diffcore-rename.c
  79. diffcore.h
  80. dir.c
  81. dir.h
  82. editor.c
  83. entry.c
  84. environment.c
  85. exec_cmd.c
  86. exec_cmd.h
  87. fast-import.c
  88. fetch-pack.h
  89. fixup-builtins
  90. fsck.c
  91. fsck.h
  92. generate-cmdlist.sh
  93. gettext.c
  94. gettext.h
  95. git-add--interactive.perl
  96. git-am.sh
  97. git-archimport.perl
  98. git-bisect.sh
  99. git-compat-util.h
  100. git-cvsexportcommit.perl
  101. git-cvsimport.perl
  102. git-cvsserver.perl
  103. git-difftool--helper.sh
  104. git-difftool.perl
  105. git-filter-branch.sh
  106. git-instaweb.sh
  107. git-lost-found.sh
  108. git-merge-octopus.sh
  109. git-merge-one-file.sh
  110. git-merge-resolve.sh
  111. git-mergetool--lib.sh
  112. git-mergetool.sh
  113. git-parse-remote.sh
  114. git-pull.sh
  115. git-quiltimport.sh
  116. git-rebase--am.sh
  117. git-rebase--interactive.sh
  118. git-rebase--merge.sh
  119. git-rebase.sh
  120. git-relink.perl
  121. git-remote-testgit.py
  122. git-repack.sh
  123. git-request-pull.sh
  124. git-send-email.perl
  125. git-sh-i18n.sh
  126. git-sh-setup.sh
  127. git-stash.sh
  128. git-submodule.sh
  129. git-svn.perl
  130. GIT-VERSION-GEN
  131. git-web--browse.sh
  132. git.c
  133. git.spec.in
  134. graph.c
  135. graph.h
  136. grep.c
  137. grep.h
  138. hash.c
  139. hash.h
  140. help.c
  141. help.h
  142. hex.c
  143. http-backend.c
  144. http-fetch.c
  145. http-push.c
  146. http-walker.c
  147. http.c
  148. http.h
  149. ident.c
  150. imap-send.c
  151. INSTALL
  152. levenshtein.c
  153. levenshtein.h
  154. LGPL-2.1
  155. list-objects.c
  156. list-objects.h
  157. ll-merge.c
  158. ll-merge.h
  159. lockfile.c
  160. log-tree.c
  161. log-tree.h
  162. mailmap.c
  163. mailmap.h
  164. Makefile
  165. match-trees.c
  166. merge-file.c
  167. merge-file.h
  168. merge-recursive.c
  169. merge-recursive.h
  170. name-hash.c
  171. notes-cache.c
  172. notes-cache.h
  173. notes-merge.c
  174. notes-merge.h
  175. notes.c
  176. notes.h
  177. object.c
  178. object.h
  179. pack-check.c
  180. pack-refs.c
  181. pack-refs.h
  182. pack-revindex.c
  183. pack-revindex.h
  184. pack-write.c
  185. pack.h
  186. pager.c
  187. parse-options.c
  188. parse-options.h
  189. patch-delta.c
  190. patch-ids.c
  191. patch-ids.h
  192. path.c
  193. pkt-line.c
  194. pkt-line.h
  195. preload-index.c
  196. pretty.c
  197. progress.c
  198. progress.h
  199. quote.c
  200. quote.h
  201. reachable.c
  202. reachable.h
  203. read-cache.c
  204. README
  205. reflog-walk.c
  206. reflog-walk.h
  207. refs.c
  208. refs.h
  209. remote-curl.c
  210. remote.c
  211. remote.h
  212. replace_object.c
  213. rerere.c
  214. rerere.h
  215. resolve-undo.c
  216. resolve-undo.h
  217. revision.c
  218. revision.h
  219. run-command.c
  220. run-command.h
  221. send-pack.h
  222. server-info.c
  223. setup.c
  224. sh-i18n--envsubst.c
  225. sha1-array.c
  226. sha1-array.h
  227. sha1-lookup.c
  228. sha1-lookup.h
  229. sha1_file.c
  230. sha1_name.c
  231. shallow.c
  232. shell.c
  233. shortlog.h
  234. show-index.c
  235. sideband.c
  236. sideband.h
  237. sigchain.c
  238. sigchain.h
  239. strbuf.c
  240. strbuf.h
  241. string-list.c
  242. string-list.h
  243. submodule.c
  244. submodule.h
  245. symlinks.c
  246. tag.c
  247. tag.h
  248. tar.h
  249. test-chmtime.c
  250. test-ctype.c
  251. test-date.c
  252. test-delta.c
  253. test-dump-cache-tree.c
  254. test-genrandom.c
  255. test-index-version.c
  256. test-line-buffer.c
  257. test-match-trees.c
  258. test-mktemp.c
  259. test-obj-pool.c
  260. test-parse-options.c
  261. test-path-utils.c
  262. test-run-command.c
  263. test-sha1.c
  264. test-sha1.sh
  265. test-sigchain.c
  266. test-string-pool.c
  267. test-subprocess.c
  268. test-svn-fe.c
  269. test-treap.c
  270. thread-utils.c
  271. thread-utils.h
  272. trace.c
  273. transport-helper.c
  274. transport.c
  275. transport.h
  276. tree-diff.c
  277. tree-walk.c
  278. tree-walk.h
  279. tree.c
  280. tree.h
  281. unimplemented.sh
  282. unpack-trees.c
  283. unpack-trees.h
  284. upload-pack.c
  285. url.c
  286. url.h
  287. usage.c
  288. userdiff.c
  289. userdiff.h
  290. utf8.c
  291. utf8.h
  292. walker.c
  293. walker.h
  294. wrap-for-bin.sh
  295. wrapper.c
  296. write_or_die.c
  297. ws.c
  298. wt-status.c
  299. wt-status.h
  300. xdiff-interface.c
  301. xdiff-interface.h
  302. zlib.c