I wrote a little history/overview here, maybe that helps:
http://blog.tfnico.com/2010/06/distributed-source-control-management.html
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To post to this group, send email to
Just to play the voice of logic here, I think it would be hard to define
when a line is introduced vs. changed, as you could say that entering a new
line is the same as changing an empty line.
An algorithm for finding the difference would have to include some sort of
fuzzy consideration of
No idea here... This list is mostly focused on introduction-level Git usage
though, you're probably better of asking at the regular Git mailing
listhttp://vger.kernel.org/vger-lists.html#git,
providing them with wich version of Git you are using, OS, and steps to
re-create the problem.
If the
Hi Graham,
It sounds like you should just have a go at it :)
I would first start off with learning some Git basics. Don't go into git-svn
before you know Git a good bit.
Quick intro: http://www.spheredev.org/wiki/Git_for_the_lazy
Reference: http://progit.org/book/
Now, when you feel you're
Hi Graham,
I think you're saying, that you don't need to do any git svn dcommit in
your git-svn clone. This sounds like the Git repo is a pure read only
mirror of the Subversion project. Such a setup is quite straight-forward
and won't give any problems.
However, as far as I understand, you
--summary
commit 1c5deadd79556b4cdfc964e826597e60a42f752d
Author: Thomas Ferris Nicolaisen tfn...@gmail.com
Date: Mon Jan 3 12:44:24 2011 +0100
Set a+x flag.
mode change 100644 = 100755 woop
Hope this helps :)
--
You received this message because you are subscribed to the Google Groups Git
Impressive!
Some tips: Insert some linebreaks in the code sections (they don't wrap
automatically) so the page doesn't get so wide.
You should also add your resource here, if it isn't
already: https://git.wiki.kernel.org/index.php/GitDocumentation
And add a link to the dzone page on top of
You're better off thinking about the *commits* that you want to pull into
the current branch.
One way is to cherry-pick the commits where you added the files:
git cherry-pick sha
This is nice if you want to pull in a single commit or two.
Alternatively, if you want to dive into more the more
Changes in your working directory are not branch-specific. If you change a
file without committing it, you can switch (checkout) branches as much as
you want. It's only when you commit that the changes get connected to a
branch.
If you want to immediately stash away local changes for fixing
Say I have this:
# On branch master
# Changes to be committed:
# (use git reset HEAD file... to unstage)
#
# modified: foo
#
# Changed but not updated:
# (use git add file... to update what will be committed)
# (use git checkout -- file... to discard changes in working
directory)
#
#
Brilliant, that was simpler than I could imagine :)
Do you know if the dashes are even necessary? Here it worked without them.
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To post to this group, send email to
Sounds like something for the main git
list: http://vger.kernel.org/vger-lists.html#git
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To post to this group, send email to git-users@googlegroups.com.
To unsubscribe from this group, send
Probably the best thing here is to see how other people do it. I don't know
much about Wordpress, but it seems pretty common to deploy it using Git and
Capistrano:
(Obviously, more recent articles are more likely to be correct today)
Neat solution. Glad you got it working :)
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To post to this group, send email to git-users@googlegroups.com.
To unsubscribe from this group, send email to
Try git show stash@{0}
It will show you the entire contents of the stash, not just the name of the
stash (which could be anything, basically).
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To post to this group, send email to
Hm, I have to read your question quite a few times before I got it.. It
would help if you could illustrate the branches somehow, perhaps by pasting
the git log --graph --oneline --all ascii
treehttp://stackoverflow.com/questions/1064361/unable-to-show-a-git-tree-in-terminal
?
So, you have
I would definitely avoid using -- as a prefix for branch names (I assume you
know what the double-dash normally means with git, as you are using it
above).
I can create branches locally with - and -- prefixes, but I'm unable to
check them out.
[19:29:08] tfnico@x:~/projects/foo/git branch --
Hi Sabba,
The thing is that the repository on *gitserver* has to be a bare
repository. Usually all central git repositories are bare. It doesn't make
sense for them to have a work-tree, and that's why Git stops you from
pushing.
I suggest you have a look at my collection of resources and
As you may have figured out, the problem is that git svn clone (fetching
repo) needs a work-tree to operate. That's why you need to split it into the
bare repo and the fetching repo. The former works as a central Git repo,
the latter is responsible for fetching stuff from SVN.
This is also an
Hi Sabba,
With the proper configuration, only one push is needed.
Check out this more recent post, it covers an example setup for handling
branches in a similar setup:
http://blog.tfnico.com/2010/11/git-svn-mirror-for-multiple-branches.html
As you can see, the magic is in the
Hi Dave,
Just to clarify: The normal way to check for changes in a repository is
usually this:
cd /path/to/repository
git status
There are many factors that come into play with git performance, and
although it is inherently fast compared to a remote repository system like
Subversion, it
Just to be clear, the upci alias is explained
here: http://blog.tfnico.com/2010/11/git-svn-mirror-for-multiple-branches.html
It's defined as:
upci = !git update-ref refs/remotes/$(git branch | grep '^*' | awk '{print
$2}') refs/remotes/origin/$(git branch|grep '^*'|awk '{print $2}') git
svn
Thanks. Unfortunately I do have a lot of branches. Actually, the fetch
does pick up all branches and sends them to the bare repository so
that every fetch updates every branch. So far it is only the dcommit
that is giving the problem. I am trying to avoid having to get
everyone use a git svn
The trick is to first clone the bare repository, and then do a git svn init
inside it, so it can be used for dcommitting.
There are two ways to set up a repository that you can dcommit from:
1) git svn clone (takes ages with big repositories)
2) git clone existing repository, and then do git
Almost, this is how:
git clone bare-url gitdir
cd gitdir
git svn init svn-url
This is 5. Set up an SVN remote in the developer's repo in this guide:
http://blog.tfnico.com/2010/11/git-svn-mirror-for-multiple-branches.html
--
You received this message because you are subscribed to the Google
Hard to say, especially without more information.
It does seem that others have had the same though:
http://support.github.com/discussions/repos/3651-git-push-fails-with-error-unpack-failed-index-pack-abnormal-exit
Maybe try some of the workarounds mentioned there?
--
You received this
On Wed, Mar 23, 2011 at 4:41 PM, Hillel (Sabba) Markowitz
sabbahil...@gmail.com wrote:
On Wed, Mar 23, 2011 at 2:03 AM, Thomas Ferris Nicolaisen
tfn...@gmail.com wrote:
Almost, this is how:
git clone bare-url gitdir
cd gitdir
git svn init svn-url
This is 5. Set up an SVN remote
No, I haven't heard of any git-svn dealings with svn:externals. That would
be beyond my expectations of what git-svn is made to deal with.
There are some Google
resultshttp://www.google.com/search?q=git+svn+externalsabout it though. Maybe
you find something there?
--
You received this
Yes, git log http://www.kernel.org/pub/software/scm/git/docs/git-log.htmlcan
take two times as arguments.
git log --since two weeks ago --until yesterday
You might also want to consider git
whatchangedhttp://www.kernel.org/pub/software/scm/git/docs/git-whatchanged.html
:
git whatchanged
Actually this was a much better guide to the git date formats:
http://www.alexpeattie.com/blog/working-with-dates-in-git/
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To post to this group, send email to git-users@googlegroups.com.
git branch mybranch remotes/origin/mybranch
git co mybranch
I had created the co alias for checkout and the upci alias.
I tried this and modified a file followed by
git commit -a -m test file update
git upci
It gave me an error message unable to determine upstream SVN
information from
OK, glad it worked. What kind of warnings are you getting?
On Fri, Mar 25, 2011 at 6:40 PM, Hillel (Sabba) Markowitz
sabbahil...@gmail.com wrote:
So it's hard to say. I would first step away from the upci alias for
a bit, and use the manual update-ref + dcommit commands again, just to
be sure
OK, this is normal. I've always had this and it never gave me any problems.
On Fri, Mar 25, 2011 at 8:32 PM, Hillel (Sabba) Markowitz
sabbahil...@gmail.com wrote:
On Fri, Mar 25, 2011 at 3:29 PM, Thomas Ferris Nicolaisen tfn...@gmail.com
wrote:
OK, glad it worked. What kind of warnings
Yes, this is true. By default, you'll get a lot of stale branches in your
fetching repo.
For the time being, I've ignored this. I regularly clean it up. Say I have a
mirror of a svn repo with trunk, tags/1.0 and a branch branches/1.0.x:
Fetching repo:
tfnico:~/git-repos/website-fetching/git
Someone else does a commit to the svn repository of a change to README.txt
Is the above commit properly rebased into your local repository before you
do the upci?
Also, try again to do the manual git update-ref and git svn dcommit instead
of using the upci alias. Could be that there is
I think the easiest way would be to run instaweb in the git repository, and
then get the file you want via http/wget.
More info here: https://git.wiki.kernel.org/index.php/Gitweb
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To post
You are right with one clarification: The svn repository must be set up to
trigger a rebase in the fetching repository upon committing.
I've found the best way to do this is to have a svn post-commit hook that
triggers a job that does this (git svn rebase/fetch + push to bare repo). It
is also
Yay! These .svn folders are causing havoc to our workspace in general.
Amazing how much they slow it down. Another good reason to switch to git :)
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To post to this group, send email to
Wow, that sounds ambitious :)
Personally, I don't have an Android device, and I imagine if I did, I
probably wouldn't use it much for development, hence I wouldn't need Git
support on it (I would probably use DropBox for storing files and stuff).
Maybe, if I had larger tablet, it would be
I'm not really familiar with the read-tree command, nor have I had any use
for it the last year of using git :)
I think read-tree is more of a lower level plumbing command that normally
we do not have so much need for.
Maybe you can explain us what you really want to achieve?
--
You received
And not a single Git consultant. Tsk, tsk!
Akshay Korgaonkar wrote:
-- Forwarded message --
From: Akshay Korgaonkar akshay.korgaon...@wisdominfotech.us
Date: Wed, Apr 6, 2011 at 12:23 AM
Subject: Available consultant's for your requirement.
To: recruiter.aks...@gmail.com
I'm not sure there are so many Drupal users frequenting this list..
Anyhow, I'm sure there are someone who can suggest something. It's just that
your mails are a bit long, and I haven't quite gotten around to read them
through yet :)
--
You received this message because you are subscribed to
A commit has a date.
When you squash one commit into the previous commit, it keeps the date of
the commit you are squashing into. Makes sense.
You could maybe reset a previous commit, and then manually amend/edit the
changes into the existing commit with the date you want to keep.
If you want
Yes, if it's two different websites, there's no point in them sharing a
repository. Have two repositories: website-us and website-uk.
There's nothing wrong with having more machines involved, of course. You can
clone around the repository as many times as you want.
But before a developer in
If it's only for backup or transport purposes, you could still rsync the
repository to your mobile. Making it a bare repository would reduce the size
of stuff to be rsynced.
I'm not familiar with the internals http://progit.org/book/ch9-6.html of a
git push or pull, but there is a lot of
Oh, I didn't spot the difference there. Hmm. Well, you can have an
intermediate intermediate repository if you want. This is a nice place for
sharing branches and stuff between developers. If you have it push onward to
the webserver automatically or if you have the developers push themselves..
72065c6
Author: Thomas Ferris Nicolaisen tfn...@gmail.com
Date: Thu Apr 28 10:10:19 2011 +0200
Merge branch 'bar' into funk
Conflicts:
src/business/validation/src/test/java/org/hbird/business/validation/UpperLowerCountTest.java
diff --cc
src/business/validation/src/test
Hi Barry,
Do you know exactly how CruiseControl updates the repository (pulls)?
Can you paste the .git/config from the CruiseControl repo?
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To post to this group, send email to
I think the closest you can get to an official release is the one linked to
on http://git-scm.com/
Which at the moment is...
Git-1.7.4-preview20110204.exehttp://code.google.com/p/msysgit/downloads/detail?name=Git-1.7.4-preview20110204.execan=3q=
- Full installer for official Git 1.7.4
This
I think it sounds a bit unintuitive that you manually created
CruiseControl's working copy repository, but at the same time you didn't
author how CruiseControl pulls updates.
Anyhows, I have little knowledge of how CruiseControl works with Git.
Perhaps you should rather try their support
Ah, silly me.
Maybe also post which version of Git you are using, and whether you're on
windows.
You can also just jump around the problem and just edit the .gitconfig file
manually:
[user]
name = You Name
email = y...@email.com
--
You received this message because you are
Hi Thorolf,
I'm afraid you've fallen out of Git's mercy by not adding these changes to
the index, or stashing them. Local changes are not specific for any branch,
so to speak. They don't stick to the branch you're in before you commit.
By adding your files to the index, Git will not overwrite
Erm, don't forget to commit as well! That's even safer than adding :)
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To post to this group, send email to git-users@googlegroups.com.
To unsubscribe from this group, send email to
You don't need to build git from source. There are plenty of ready binaries
around. Just pick your platform in http://git-scm.com/download
As far as I know, git-svn are included in most binaries.
If you still have problems, let us know which platform you're on (Windows,
Linux or OS X).
If you
Hm, well this is a bit beyond me, I'm afraid. You could try asking at the
main Git list:
http://vger.kernel.org/vger-lists.html#git
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To post to this group, send email to
Konstantin beat me to it. I suspect that 'wn' is
'webbynodehttps://github.com/webbynode/webbynode/issues/59
'.
git commit -a is synonymous to doing a commit after doing git add -u (adds
all changes for files already tracked).
--
You received this message because you are subscribed to the
Hum, well I didn't even notice this one last time I was looking through the
alternatives.
I was looking for some tool that was able to show side-by-side diffs. In the
end we ended up installing Gerrit.
We just use normal Gitweb as repo web frontend. I haven't yet found any good
reasons to
Argh, of course it was. Sorry, I didn't see that you had replied to that
thread already.
Still, I think this subject is beyond the complexity for this newbie list
:)
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To view this
Oh, here we go: https://market.android.com/details?id=com.madgag.agit
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To view this discussion on the web visit
https://groups.google.com/d/msg/git-users/-/FKnL9LSOQ1AJ.
To post to this
Hi,
I think Gerrit is a bit outside the scope of this list. I see that you
already tried twice on the Gerrit mailing list
(https://groups.google.com/forum/#!forum/repo-discuss), and I doubt you'll
get more help here.
--
You received this message because you are subscribed to the Google
Hi,
I'm not so familiar with Git GUI, but I see there is this Browse Branch
Files command where you can explore the repository in a given
branch/revision without doing anything with your working tree. Does that
work for you?
Also, in gitk (the log visualizer), you can right click commits and
Hi Thorsten,
This is a common problem when there are colliding branch names with branch
directories. You can have multiple branches sharing a prefix, and git uses
directories to represent this):
http://stackoverflow.com/questions/2527355/using-the-slash-character-in-git-branch-name
So you
Regarding the missing branches, I don't know how that is.
Can you add the full urls to these missing branches the way they look in the
SVN repo?
Do these branches still exist at HEAD revision?
--
You received this message because you are subscribed to the Google Groups Git
for human beings
On Monday, June 27, 2011 8:07:04 PM UTC+2, Steph wrote:
I've forwarded the error part of this to the larger git mailing list, but I
have some PEBKAC issues that I'd like to hash out in a smaller forum...
The command I used is this:
/usr/local/git/bin/git svn clone https://[server]/svn -A
Yes, git-svn leaves behind some junk that you can clean up later, like these
@revision branches (probably git-svn finds these revisions interesting for
some reason, maybe a move, or a copy took place at these points).
What is the error that occurs as git-svn won't fetch any more?
--
You
Hi,
You could just set up a scheduled task on the Windows server that checks for
changes and does a pull (in a batch script).
Personally, I've developed a taste for using my company's
CI-system (continuous integration) for this kind of work. Think of it as a
neat place to run scheduled
Hi Erwin,
Finding the right branching/deployment model in Git is pretty much up to
your imagination :)
However, if you're not the creative type, there's a de-facto best practice
model here: http://nvie.com/posts/a-successful-git-branching-model/
Maybe you'll find this model inspiring. Note
Oh, by the way, the model is commonly known as git-flow, and there's a
mailing list dedicated to it:
https://groups.google.com/forum/#!forum/gitflow-users
And also a git-wrapper that makes it easier to use (but don't start using it
before you know what's going on under the hood):
Hi,
Your basically right: With DCVS you have a two step procedure for sharing
changes with other coders.
I think, however, that this is actually an advantage. Having these two steps
separate loosens the activity of coding/commiting, with the second phase of
actually integrating with others.
I'm not sure if this helps, but here's a Git repository tool that supports
Smart HTTP authentication out of the box:
http://gitblit.com/index.html
It's still a bit new and fresh, but the author has been very quick the
couple of bugs I ran into. It's also small enough that you could fix some
A squash merge is where you take all the changes that would occur from doing
a merge, and squash them together in one big commit.
For your mail/patch question, it sounds like the git
format-patchhttp://www.kernel.org/pub/software/scm/git/docs/git-format-patch.htmlcommand/documentation
could be
Hi Hernani,
Which devices are you talking about?
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To view this discussion on the web visit
https://groups.google.com/d/msg/git-users/-/deTFXNUPtA4J.
To post to this group, send email to
Hi Hernani,
That doesn't tell me much about what you are trying to do, or what kind of
devices this is about. Can you try to restate the question, and include what
you are trying to do, what your goals are, and what you need Git for?
--
You received this message because you are subscribed to
Hi Nathan,
Yeah, I often get problems with --ignore-paths too. Sometimes I wonder if it
works at all.
Did you consider limiting the revisions included in the clone? You can pass
in a revision range to git-svn fetch like this: -r12033:HEAD
--
You received this message because you are
No, Github repos will always show you the sources. However, there's a
special mechanism for that on Github called Pages:
http://pages.github.com/
Aside from that, there's also a documentation function that will display
readme-files rendered from wiki-markup below your source code.
And finally
Works fine for me too.
Make sure you've made a git fetch Foo2 first. Git can't track objects it
doesn't know about yet.
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To view this discussion on the web visit
Regarding the git sucks thingie, I like to think of if like this*:
There's simple stuff, and there's easy stuff.
Simple means the opposite of complex. Easy, on the other hand, means it's
very close to the stuff you already know. Git is simple. Subversion is
easy.
Git is *a lot* of features in
To put it in other words: Changes in the working tree are not part of a
branch.
Changes in the index (after add) are also not yet par of a branch.
For some more insight, I'd recommend Scott Chacon's Tale of the three
trees talk:
http://www.infoq.com/presentations/A-Tale-of-Three-Trees
I take it you are talking about the central repository where developers
will be pushing in changes, and then have them being built and tested by
the build process.
Note that the build box will need to have non-bare repository (with a
working tree) to work, while the central repository will
kernel.org recently suffered a security breach, and was unavailable for a
long time. Reading the Site News section on kernel.org, it sounds like they
are still working on getting the stuff back up. I have no idea why some
wiki pages are missing..
Guess we just have to be patient and wait till
The normal approach is pretty much what the error message says: Either
commit first, or stash the changes. Example of the latter approach:
$ git pull
error msg
$ git stash save
$ git pull
$ git stash pop
handle conflicts
--
You received this message because you are subscribed to the Google
A revert of [A] can result in conflicts with the changes you made in [B].
You should handle these conflicts normally (as any other merge conflics in
git):
1) Git status, see which files have conflicts
2) Resolve the conflicts (picking which changes you would like to keep)
3) git add on the
You're not the first one to get confused about those :)
Maybe the biggest cause of confusion is that the last two (checkout
reset) have two modes: Either they work on files, or they work on revisions
(or references, to be concrete). I'll try giving a short, but somewhat
incomplete explanation
Hi,
1. You can configure .gitignore whenever you like. If you commit files, and
later ignore them, they will be treated as normal checked-in files, until
you delete them (from then on the ignore will take effect).
2. There's a good starting point in the Visual Studio - GitExtensions
plugin
Hi Thorsten,
Each user has a full clone of the origin repository. As it is distributed,
each user will have all branches (even though they remote branches, they
also fully exist in each clone.
So user b can still do a
git checkout origin/branch/test
.. and keep working on that branch, push
I take it you are asking about the -a argument for commit.
git commit --help says:
-a, --all
Tell the command to automatically stage files that have been
modified and deleted, but new files you have not told git about are not
affected.
This is basically the same as first
After running git bisect run, (I just actually tried bisecting for the
first time, after two years of gitting :)), I ended up with HEAD pointing
at the actual commit that broke the build.
Can you double check that the commit before is not failing as well, or
maybe there are some other
tfnico@Thomas-Ferris-Nicolaisens-iMac
[14:32:35]
commit 74a277ba449d800d1346151228aa2dd05f7783b1
Author: Thomas Ferris Nicolaisen thomas.nicolai...@company.com
Date: Thu Jan 5 12:47:45 2012 +0100
Break the build
[ diff ...]
As it stands
By the way, compare your git version:
➜ ~/projects/agnes/[(broke-the-build)|BISECTING]git --version
tfnico@Thomas-Ferris-Nicolaisens-iMac
[14:34:13]
git version 1.7.3.4
--
You received this message because you are subscribed to the Google Groups Git
The intention of bisect is to get the first bad commit. From the docs:
Eventually there will be no more revisions left to bisect, and you will
have been left with the first bad kernel revision in refs/bisect/bad.
So git bisect run ending up with a commit which is good doesn't make
sense.
If
Thanks for the example. I'm indeed able to recreate the problem. I guess
that that's just the way it works, and my toy repo landed on the failing
commit by accident. Sorry for misleading.
How about you just use the contents of that file mentioned in the docs?
cat .git/refs/bisect/bad
--
You
Ah, glad I could help then. I also learned git-bisect and a bit of
shell-script in the process :)
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To view this discussion on the web visit
Even though the git model stores snapshots, internally it optimizes the
storage to a degree which makes it take up storage space equal to that if
only the diffs were stored. If you're curious, read more about how it works
here:
How about git add -u?
from the docs:
-u, --update
Only match filepattern against already tracked files in the
index
rather than the working tree. That means that it will never stage
new files, but that it will stage modified new contents of
tracked
Just a quick answer: I've seen some teams who have tried employing this
one branch for each customer strategy.
While this might seem like a good idea in the beginning, down the road
there are always wishes to merge features that have been developed for one
customer with others. In the
This is a new problem, I guess has little to do with submodules.
I'm guessing that the patch you create does not fit into the repository
where you are trying to apply it, maybe because other changes have occurred
in the mean time. I can't really say any more without seeing the entire
error
Hi,
The log should be the same. You are looking at the logs of two different
things:
repository A (some_local_git_repo)
- has a remote called origin which is where it was originally cloned from
(github? some server?)
repository B (your local clone)
- has a remote called origin which is
Eh, please ignore my first sentence: The log should be the same. - I left
it in there by mistake.
--
You received this message because you are subscribed to the Google Groups Git
for human beings group.
To view this discussion on the web visit
On Friday, January 20, 2012 4:01:27 PM UTC+1, dspfun wrote:
Great, thanks for your answer!
A confusing thing is the difference between:
git log master
and
git log origin/master
git log master shows the log of the remote repositorys master
branch.
No. git log master shows the
I can't recreate the problem.
If I do some local commits with lots of whitespaces in them, it works fine.
If I do format-patch with --ignore-space-change, I am able to trigger a
similar error like the one you got.
Normally dealing with whitespaces isn't a problem in my experience.. Could
it
1 - 100 of 634 matches
Mail list logo