Like commit -a, but...

3 messages, 2 authors, 2016-06-15 · open the first message on its own page

Like commit -a, but...

From: Andreas Krey <hidden>
Date: 2016-06-15 22:55:12

Hi all,

I have a workflow for which I can't quite find the git tooling.

Essentially what I want is like 'git commit -a', except that I
want the resulting commit on a branch I name instead of the current
one, and I want my current index not being modified. At the moment
I emulate that via

  git commit -a -m TEMP": `date` $*" && \
  git push -f nsd master:temp && \
  git reset HEAD^ && \

but that a) changes the index (ok, not that bad), and it
will change my current commit in the case that there are
no unmodified files (no commit -> head doesn't point
where I want). Ok, that can be prevented by --allow-empty.

But still I'd like to know if there is a cleaner solution,
esp. with respect to the index.

(Ah, the point of all this is to take the exact current worktree and
push it to a compile&deploy server; I don't want to chop my work into
commits before I even could compile it.)

Andreas



-- 
"Totally trivial. Famous last words."
From: Linus Torvalds <torvalds@*.org>
Date: Fri, 22 Jan 2010 07:29:21 -0800

Re: Like commit -a, but...

From: Andreas Krey <hidden>
Date: 2016-06-15 22:55:12

On Mon, 05 Nov 2012 21:29:48 +0000, Andreas Krey wrote:
...
But still I'd like to know if there is a cleaner solution,
esp. with respect to the index.
Actually, it seems

 commit -m 'index'
 commit -a -m 'worktree'
 ...push
 git reset HEAD^
 git reset --soft HEAD^

might do the index trick.

But is there a direct way to convert the current working tree into a
tree object?

Andreas

-- 
"Totally trivial. Famous last words."
From: Linus Torvalds <torvalds@*.org>
Date: Fri, 22 Jan 2010 07:29:21 -0800

Re: Like commit -a, but...

From: Tomas Carnecky <hidden>
Date: 2016-06-15 22:55:12

On Mon, 05 Nov 2012 21:56:28 +0100, Andreas Krey [off-list ref] wrote:
On Mon, 05 Nov 2012 21:29:48 +0000, Andreas Krey wrote:
...
quoted
But still I'd like to know if there is a cleaner solution,
esp. with respect to the index.
Actually, it seems

 commit -m 'index'
 commit -a -m 'worktree'
 ...push
 git reset HEAD^
 git reset --soft HEAD^

might do the index trick.

But is there a direct way to convert the current working tree into a
tree object?
PARENT=$(git rev-parse HEAD)
TREE=$(git write-tree)
COMMIT=$(git commit-tree -p $PARENT -m "message' $TREE)
git push origin $COMMIT:refs/heads/teh-branch

write-tree+commit-tree is what git-commit does internally.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help