Hacker Newsnew | past | comments | ask | show | jobs | submit | taberiand's commentslogin

Don't rewrite shared public history

It's ok to force-push a branch that only you have worked on (and even in the case of others working on the same branch it can be fine as long as you communicate with them)


I agree. This is a valid exception.

How does the megamerge handle the case where two included branches overlap in changes and a new commit is made that applies to the overlap?

This is something you have to generally handle manually since absorb won't squash hunks with ambiguous targets, but I typically stack these branches and accept the dependency. I have had instances where this has backfired a little bit re: ordering but thankfully with JJ and the very patient little man in my computer named Codex it's easy to reorder them and end up with the same diff

The mega merge wouldn't handle that based on the way the article shows. You COULD have a revset that includes stacked changes, though. That does work and is what I currently do.

Could you please elaborate on how you do this?

If you have a dependency tree like this:

       / A \
      -- B - Megamerge 
       \ C /
There is nothing stopping you from doing this:

       / A - D \
      -- B ----- - Megamerge 
       \ C - E /
(Edit, or even this:)

       / A - D \
      -- B ----- - Megamerge 
       \ C ----/
          \ E /
Where E stacks on C and D stacks atop A. In the case above, A-E are revsets of either 1 or more commits. JJ doesn't care if they are or not. You'd generally bookmark the revset on the final "commit" as the pointer.

           / features/add-widgets
          /  / features/add-widget-integration
       / A - D \
      -- B ----- - Megamerge 
       \ C - E /
          \   \ feature/add-new-page
           \ feature/rework-navigation
In the example above, let's say you rework the navigation. You could have it exist alongside the navigation rework, but changes are you don't want to do the work twice. You just say "hey, this depends on the nav rework" and so it's there inside of the repo.

The thing is there is another way to do this where you end up with 4 different parents in a megamerge and your nav rework touches the megamerge and your new page is yet another revset is just a fork off of it. But yeah... JJ gives you a lot of flexibility in this manner.


Thanks!

This is true but I don't think the downvotes are "fake" though. There's just a whole lot of people who truly believe they are Making the World a Better Place Through Capitalism


Maybe this is just a symptom of my screen addiction, but I keep a close eye on this site for a lot of the day. I’ve noticed a pattern where my commments initially get one or two upvotes (within the first 5-10 minutes of posting) but will then immediately get a greater than or equal amount of downvotes very quickly. It happens consistently enough that I’ve noticed a pattern. The upvotes happen sporadically and the downvotes happen simultaneously.


I'm more cynical - I think that breed is mostly extinct, and the current batch is downvoting/flagging because they don't want the sentiment to spread.


It’s far, far too late to contain this sentiment.


At least until they actually tried selling them


They could be valuable in the sense that the owner can destroy bitcoin at will. Just having that leverage could be useful.


On the face of it, "10k lines of code per hour" sounds like a ridiculous metric to the point of parody.


Saying how many lines of code you can write this way is also a bit like bragging that you are building world's heaviest airplane.


The generation that's going to enter adulthood in the age of unchecked climate change and AI taking over their careers?

I say let them enjoy themselves while they still can.


The generation that's going to enter adulthood in the age of unchecked climate change and AI taking over their careers?

You forgot the part where they also became addicts to games that only exist to funnel money to tech feudalist overlords.


The sensor isn't in the main compartment, it's in the back reading the water (not a specific bowl or other item)


Why not just wrap the tool so that when the LLM uses it, the wrapper enforces the OTP? The LLM doesn't even need to know that the tool is protected. What is the benefit of having the LLM enter the OTP?


Yes could do that, I think it makes things more complex though because then the tool is less plug and play and the thing calling it would need to handle it


Is that cheating, or is that just working smarter not harder?


The interesting aspect of the ongoing tests I feel is seeing how models can plan out an image directly using SVG primatives solely through reasoning (code-to-code). If they have a reference then it's a different type of challenge (optimizing for a trace).


Other comments suggest that the Agents.md is read into the system prompt and never leaves the context. But it's better to avoid excessive context regardless


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: