Issues related to the Nest, i.e. this website. The source code for the Nest is not yet public.

#48 "Nothing to push" even though there is something to push.

Closed on August 5, 2021
Freax13 on August 5, 2021

I’m trying to push a change to the nest but it fails with “Nothing to push”. I tried to unrecord and rerecord the change but that didn’t help. I cloned the repository from the nest to another directory on my computer and pushed to it over ssh and that worked, so I believe this is an error on the nest’s side.

@pmeunier should I send you an email containing a tarball of the repo?

pmeunier on August 5, 2021

Thanks for the report. I don’t think I need the tarball, since this isn’t a corruption issue. What commands did you use to push? What worked? What didn’t?

Pushing is usually done over SSH, it doesn’t work over HTTP (yet).

Freax13 on August 5, 2021

My current channel is :7.

For trying to push to the nest: I tried pijul push ssh.pijul.com/GarettWithOneR/pijul-vscode and pijul push ssh.pijul.com/GarettWithOneR/pijul-vscode --from-channel :7 --to-channel :7 to push to the nest and both commands failed with Nothing to push.

For trying to push to the nest: I tried pijul push localhost/home/freax13/Documents/pijul-vscode and pijul push localhost/home/freax13/Documents/pijul-vscode --from-channel :7 and both worked. I tried pijul push localhost/home/freax13/Documents/pijul-vscode --from-channel :7 --to-channel :7 and it failed with Error: Remote exited with status 1. Before each attempt, I reset the repo in /home/freax13/Documents/pijul-vscode (the repo I’m trying to push to) by executing pijul unrecord OKOH6H2FW3PK6Q2Y5CO7TRCRH2JZS6EIBKLIZO5OZAS3MFHJKRLQC (OKOH6H2FW3PK6Q2Y5CO7TRCRH2JZS6EIBKLIZO5OZAS3MFHJKRLQC being the change I want to push) and pijul reset.

pmeunier on August 5, 2021

Have you tried the following: pijul push Freak13@ssh.pijul.com:GarettWithOneR/pijul-vscode --to-channel main:7 ?

By default, Pijul will try to push from your current channel, to a channel with the same name on the remote. The special syntax a:b in --to-channel means “compare with channel a, push to channel b”.

In your case, it compared with a Nest channel called :7, which doesn’t exist (there’s only one channel called main in that repository). If that had succeeded, it would have pushed the result to a channel corresponding to a Nest discussion (:7).

Freax13 on August 5, 2021

Have you tried the following: pijul push Freak13@ssh.pijul.com:GarettWithOneR/pijul-vscode --to-channel main:7

That worked.

By default, Pijul will try to push from your current channel, to a channel with the same name on the remote. The special syntax a:b in --to-channel means “compare with channel a, push to channel b”.

So I guess my mistake was to make a channel called :7 because that syntax is actually just intended for --to-channel. Is there a more idiomatic way of signaling that a channel is intended to be pushed to a discussion or should I just manually push individual changes from my main channel to a discussion channel?

Anyways, thank you so much for your help!

Freax13 closed this discussion on August 5, 2021
pmeunier on August 5, 2021

should I just manually push individual changes from my main channel to a discussion channel?

I don’t think you should use channels at all. Their main use is to keep different versions of a project together in the long run. Git’s “feature branches” are just patches in Pijul. Everything you can do with feature branches (such as rebasing and merging) is just a patch application in Pijul, since all independent patches commute.

Freax13 on August 5, 2021

I believe that’s what I meant. I should record all changes only to my local main channel and push changes to the remote channels that are implicitly created when opening a discussion (eg 7).

Again thank you for answering my questions, I appreciate it!