git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[JGIT PATCH 8/8] Don't try to pack 0{40} during push of delete and update

From
Shawn O. Pearce <spearce@spearce.org>
Date
Jul 1, 2008, 03:04 UTC
Message-ID
<1214881445-3931-9-git-send-email-spearce@spearce.org>
In-Reply-To
<1214881445-3931-8-git-send-email-spearce@spearce.org>

`jgit push origin :refs/heads/die refs/heads/master` tries to pack 0{40} to delete branch "die" while also packing the objects needed to update branch master. Since "die" is being removed we do not want to pack any objects for it, as there is nothing to pack.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
---
 .../jgit/transport/BasePackPushConnection.java     |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/org.spearce.jgit/src/org/spearce/jgit/transport/BasePackPushConnection.java b/org.spearce.jgit/src/org/spearce/jgit/transport/BasePackPushConnection.java
index 7ae3aa7..784a578 100644
--- a/org.spearce.jgit/src/org/spearce/jgit/transport/BasePackPushConnection.java
+++ b/org.spearce.jgit/src/org/spearce/jgit/transport/BasePackPushConnection.java
@@ -169,8 +169,10 @@ class BasePackPushConnection extends BasePackConnection implements
 
 		for (final Ref r : getRefs())
 			remoteObjects.add(r.getObjectId());
-		for (final RemoteRefUpdate r : refUpdates.values())
-			newObjects.add(r.getNewObjectId());
+		for (final RemoteRefUpdate r : refUpdates.values()) {
+			if (!ObjectId.zeroId().equals(r.getNewObjectId()))
+				newObjects.add(r.getNewObjectId());
+		}
 
 		writer.preparePack(newObjects, remoteObjects, thinPack, true);
 		writer.writePack(out);
-- 
1.5.6.74.g8a5e
Previous: Shawn O. Pearce
Message 9 of 9 in “Minor push fixups”
  1. 0/8 Minor push fixupsShawn O. Pearce, Jul 1, 2008
  2. 1/8 Correct thin pack completion in IndexPack to handle some bundlesShawn O. Pearce, Jul 1, 2008
  3. 2/8 Delete reflog when deleting ref during dumb transport pushShawn O. Pearce, Jul 1, 2008
  4. 3/8 Refuse to create or delete funny ref names over dumb transportsShawn O. Pearce, Jul 1, 2008
  5. 4/8 Shorten progress message text from PackWriterShawn O. Pearce, Jul 1, 2008
  6. 5/8 Correctly name the stderr redirection thread for local transportShawn O. Pearce, Jul 1, 2008
  7. 6/8 Support 'git upload-pack' and 'git receive-pack' over SSHShawn O. Pearce, Jul 1, 2008
  8. 7/8 Pack jgit into a portable single file command line utilityShawn O. Pearce, Jul 1, 2008
  9. 8/8 Don't try to pack 0{40} during push of delete and updateShawn O. Pearce, Jul 1, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.