* Like commit -a, but...
@ 2012-11-05 20:29 Andreas Krey
2012-11-05 20:56 ` Andreas Krey
0 siblings, 1 reply; 4+ messages in thread
From: Andreas Krey @ 2012-11-05 20:29 UTC (permalink / raw)
To: git
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
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Like commit -a, but...
2012-11-05 20:29 Like commit -a, but Andreas Krey
@ 2012-11-05 20:56 ` Andreas Krey
2012-11-05 21:36 ` Tomas Carnecky
2012-11-05 22:36 ` Andreas Schwab
0 siblings, 2 replies; 4+ messages in thread
From: Andreas Krey @ 2012-11-05 20:56 UTC (permalink / raw)
To: git
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
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Like commit -a, but...
2012-11-05 20:56 ` Andreas Krey
@ 2012-11-05 21:36 ` Tomas Carnecky
2012-11-05 22:36 ` Andreas Schwab
1 sibling, 0 replies; 4+ messages in thread
From: Tomas Carnecky @ 2012-11-05 21:36 UTC (permalink / raw)
To: Andreas Krey, git
On Mon, 05 Nov 2012 21:56:28 +0100, Andreas Krey <a.krey@gmx.de> wrote:
> 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?
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.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Like commit -a, but...
2012-11-05 20:56 ` Andreas Krey
2012-11-05 21:36 ` Tomas Carnecky
@ 2012-11-05 22:36 ` Andreas Schwab
1 sibling, 0 replies; 4+ messages in thread
From: Andreas Schwab @ 2012-11-05 22:36 UTC (permalink / raw)
To: Andreas Krey; +Cc: git
Andreas Krey <a.krey@gmx.de> writes:
> But is there a direct way to convert the current working tree into a
> tree object?
You can create a temporary index by setting the GIT_INDEX_FILE env var.
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2012-11-05 22:36 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-11-05 20:29 Like commit -a, but Andreas Krey
2012-11-05 20:56 ` Andreas Krey
2012-11-05 21:36 ` Tomas Carnecky
2012-11-05 22:36 ` Andreas Schwab
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).