Re: [git-users] Merging between multiple git svn repositories without the svn
On Mon, Jul 20, 2015 at 02:45:36PM -0400, Jan Trmal wrote: John, thanks for your response, I will experiment with your suggestions. Let me clarify details of what I was saying-- I'm not sure if I'm able to express my concern clearly. Both of these repositories (jtrmal, vimal) were created from the same svn repository, using git svn clone. The master branches on both repos are the same (up to a few last commits, because they were sync'd at different times) content-wise, the git-svn id's in the logs are the same, only the sha numbers, are different. I don't understand the reason for that, but I assume there is some randomness while initiating the git repository. IIRC the shasum of the commit is sha(content of the commit+sha of the parent). IIRC there `git-svn` doesn't guarantee that the shasums will be identical between two `git svn clone` of the same repo. I'm not sure if that's true all the time, but it's clear that some arguments will have an influence on the tree of changes (wether branches are included, etc), which in turn will influence the shasums. I gather this is a reason for the man page of git-svn including the following text (at the top of the *caveats* section): For the sake of simplicity and interoperating with Subversion, it is recommended that all git svn users clone, fetch and dcommit directly from the SVN server, and avoid all git clone/pull/merge/push operations between Git repositories and branches. The recommended method of exchanging code between Git branches and users is git format-patch and git am, or just 'dcommit’ing to the SVN repository. /M -- Magnus Therning OpenPGP: 0xAB4DFBA4 email: mag...@therning.org jabber: mag...@therning.org twitter: magthe http://therning.org/magnus Good powers of observation are frequently called cynicism by those that don't have them. -- You received this message because you are subscribed to the Google Groups Git for human beings group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout. signature.asc Description: PGP signature
[git-users] Re: git svn workflow
Git supports multiple fetches: fetch = trunk/project-a:refs/remotes/project-a/trunk fetch = branches/demos/june-project-a-demo:refs/remotes/project-a/demos/june-demo so, change your .config file to point to your env-specific directory and a git svn reset -r and fetch/rebase On Friday, September 4, 2009 at 5:45:58 PM UTC-4, Mike Lowry wrote: I'm using git locally and interfacing with an svn repo. My workflow is something like: git checkout master git svn rebase #pull svn changes git checkout -b myfeature #create local branch for hacking #hack hack hack my feature git commit -a #commit my hack changes git checkout master git svn rebase # get any more changes from svn git checkout myfeature git rebase master # rebase master into myfeature git checkout master git merge myfeature # merge myfeature back into master git svn dcommit # check it into svn Only problem is master won't work locally due to a bunch of environment specific settings (Think IP address, and path information hard coded. Yes I know this is bad.) Right now I'm saving all of the environment specific files in an external directory and everytime I do a checkout I copy the files into my working copy, diffing them before I copy, to see if they have been changed in any way. Needless to say this is a major pain. Any suggestions on how to manage the enviornment specific files? -- You received this message because you are subscribed to the Google Groups Git for human beings group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [git-users] Merging between multiple git svn repositories without the svn
Magnus, I agree with your arguments. But yet, we are/were in the situation when we have to have some strategy how to deal with it. y. On Tue, Jul 21, 2015 at 11:01 AM, Magnus Therning mag...@therning.org wrote: On Mon, Jul 20, 2015 at 02:45:36PM -0400, Jan Trmal wrote: John, thanks for your response, I will experiment with your suggestions. Let me clarify details of what I was saying-- I'm not sure if I'm able to express my concern clearly. Both of these repositories (jtrmal, vimal) were created from the same svn repository, using git svn clone. The master branches on both repos are the same (up to a few last commits, because they were sync'd at different times) content-wise, the git-svn id's in the logs are the same, only the sha numbers, are different. I don't understand the reason for that, but I assume there is some randomness while initiating the git repository. IIRC the shasum of the commit is sha(content of the commit+sha of the parent). IIRC there `git-svn` doesn't guarantee that the shasums will be identical between two `git svn clone` of the same repo. I'm not sure if that's true all the time, but it's clear that some arguments will have an influence on the tree of changes (wether branches are included, etc), which in turn will influence the shasums. I gather this is a reason for the man page of git-svn including the following text (at the top of the *caveats* section): For the sake of simplicity and interoperating with Subversion, it is recommended that all git svn users clone, fetch and dcommit directly from the SVN server, and avoid all git clone/pull/merge/push operations between Git repositories and branches. The recommended method of exchanging code between Git branches and users is git format-patch and git am, or just 'dcommit’ing to the SVN repository. /M -- Magnus Therning OpenPGP: 0xAB4DFBA4 email: mag...@therning.org jabber: mag...@therning.org twitter: magthe http://therning.org/magnus Good powers of observation are frequently called cynicism by those that don't have them. -- You received this message because you are subscribed to a topic in the Google Groups Git for human beings group. To unsubscribe from this topic, visit https://groups.google.com/d/topic/git-users/xmEykguX9q4/unsubscribe. To unsubscribe from this group and all its topics, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups Git for human beings group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [git-users] Re: Merging between multiple git svn repositories without the svn
On Tue, Jul 21, 2015 at 8:58 AM, Yenda Trmal jtr...@gmail.com wrote: One of our guys figured that out -- I'm posting here his solution in case someone will deal with a similar problem https://github.com/workflow-demo-org/workflow-demo/wiki/Merge-svn-branch-from-another-Git-repo-that-Git-thinks-is-unrelated I'm reading that very closely, for learning purposes. Thanks for posting the URL. y. -- Schrodinger's backup: The condition of any backup is unknown until a restore is attempted. Yoda of Borg, we are. Futile, resistance is, yes. Assimilated, you will be. He's about as useful as a wax frying pan. 10 to the 12th power microphones = 1 Megaphone Maranatha! John McKown -- You received this message because you are subscribed to the Google Groups Git for human beings group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[git-users] Could not load program git
Hello, We are using git 1.8.3.1 on AIX 6.1 server. Recently AIX patches applied on the AIX box and git stopped working. git is failing to extract the code. Error attached . The error is mentioned below in blue color. https://lh3.googleusercontent.com/-2FdsPT7FvE0/Va8H416bPkI/AUo/Z4LjS_JvzAI/s1600/git_Error.JPG Dependent module /usr/lib/libcrypto.a (libcrypto.so.1.0.1) could not be loaded. Member libcrypto.so.1.0.1 is not found in archive How to resolve this issue. It is stopping us to apply AIX patches which is mandatory as part of company policy. Please help. Thanks, RK. -- You received this message because you are subscribed to the Google Groups Git for human beings group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [git-users] Create a new repository out of sub repository
How am I going to use git filter branch? I tried this with no effect: git filter-branch --msg-filter administrator... I got a message saying: git-rewrite already exists,please remove it Apart from the message I just do not know how to use this directive and the manual confuses me...many commands go with it. Τη Δευτέρα, 20 Ιουλίου 2015 - 9:28:29 μ.μ. UTC+3, ο χρήστης Konstantin Khomoutov έγραψε: On Mon, 20 Jul 2015 06:50:02 -0700 (PDT) Dimitris Papageorgiou foryo...@gmail.com javascript: wrote: I have git init a working directory...here is it C:\Apache24\htdocs\Appointments\Administrator I now want to create git init another directory which sits *above *the aforementionedC:\Apache24\htdocs\Appointments Soin essenceI want to disregard/delete the old branch/repo(C:\Apache24\htdocs\Appointments\Administrator)...*but keep the commits and transfer them to the new repo.* How am I going to do it? I hope I was clear. Quite clear. The only problem is with the message subject which misses the point completely: a branch is a line of development in a repository, and your question is about creating a new repository. As to the problem at hand, I'd go this route: 1) Use `git filter-branch` on all the relevant branches in your current repository to modify all the commits in them to make them record a prefix directory, Administrator, in all their commits. 2) Move the Git database directory (.git) one level up -- into the Appointments directory. 3) `git add` everything needed under this directory (except Administrator -- as it will appear already tracked). 4) Record the new commit. The end result will be the repository which contains all the initial history plus a single commit of the new data. Modifying the history in the original repository is a hard part. Basically you'll need to filter all the relevant branches in your source repository. Something like this: $ cd theRepo $ git branch tmp master $ git filter-branch --tree-filter 'mkdir -p ./Administrator find . -mindepth 1 -path ./Administrator -prune -o -print | xargs mv -t ./Administrator' tmp ...now verify that the tmp branch looks OK, and replace master with it. Repeat for all the other branches. (Note that this sinippet assumes a POSIX shell which means Git Bash in your case.) The problem here is that the history might have complicated graph of intertwined histories, and that would make using `git filter-branch` an excercise in patience and trial-and-error. In such a case you might nominate just a single branch for conversion and sacrifice some bits of full history. If you're OK with some history traceability, there's another approach which is known as subtree merging: 1) Clone your source repository somewhere on the filesystem using something like git clone --bare src dst 2) Move the whole Administrator directory (including .git in it) somewhere out of the tree. 3) Initialize a new repository under Appointments. `git add` everything needed except Foo. Record a commit. 4) Fetch the relevant branch from the repo created on step (1), say git fetch /c/path/to/dst master:dst-master to create the local branch dst-master containing the commits of source master. 5) Subtree-merge that new branch under the prefix Administrator: git merge --no-commit dst-master git read-tree -u --prefix=Administrator dst-master git commit By now, you have your original history merged, and it appears under the directory Administrator. 6) Verify the contents under Administrator is the same that in the directory you've moved away on step (1) -- except for the .git subdirectory, of course. The problem with this approach is that if you will try to trace the history of the Administrator subdirectory or any file under it -- using commands like git log -- Administrator git log -- Administrator/some/file they will stop at the commit recorded on step (5) because the prefix Administrator came into existence only then. You will still be able to traverse there using more explicit means, of course. Read through [2] for more info on these caveats. 1. http://bpeirce.me/moving-one-git-repository-into-another.html 2. https://groups.google.com/d/topic/git-users/HXoX-kpkYkM/discussion -- You received this message because you are subscribed to the Google Groups Git for human beings group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[git-users] bare repo git gc --aggressive
I use git at home. I have my normal working directories. I keep the associated bare repository on a NAS box (accessed with NFS, if that matters). I am wondering if it is a good idea to periodically, say monthly, go a git gc --aggressive on the bare repositories which I update almost daily. -- Schrodinger's backup: The condition of any backup is unknown until a restore is attempted. Yoda of Borg, we are. Futile, resistance is, yes. Assimilated, you will be. He's about as useful as a wax frying pan. 10 to the 12th power microphones = 1 Megaphone Maranatha! John McKown -- You received this message because you are subscribed to the Google Groups Git for human beings group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[git-users] adding a remote on a private branch.
Hi, i want to add a remote for a private branch. i have a parent repository call it (P). and two clones of P on different machines (a) and (b), call it Pa and Pb. now in machine (a) i want to create a private branch tracking Pb, how do i go about achieving this, any help is appreciated.. thanks! -dexter -- You received this message because you are subscribed to the Google Groups Git for human beings group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [git-users] copied form path is not set when using git svn merge/dcommit
On Mon, 20 Jul 2015 15:16:34 -0700 (PDT) Chidveer Reddy chidv...@gmail.com wrote: I have an SVN repo. Repo |_ branch 1 | |_trunk. 1. As an SVN user, i added a new file to branch 1 (file1.txt) 2. Now, i went to the git console and using git-svn, I did a fetch and merge to trunk (from branch 1 to trunk). Merge went well and i did a DCommit. 3. After dcommit the svn:mergeinfo properly was set properly. But, the file that i have added file1.txt was sent to svn as a new file it should be as copied-from-path. Screenshot as below. [image: Inline image 3] Note: If i do a merge in svn it will preserve the file inheritance, as the screenshot below. it says, the file Branch 5.6 file 1 -copy.txt came form branches/5.6/ [image: Inline image 1] I don't know the internals of git-svn, but I'm afraid you're out of luck here: Git does not keep any information about file copies and/or renames -- this concept simply does not exist in Git. So you can't really achieve 1-to-1 mapping between Git and Subversion. -- You received this message because you are subscribed to the Google Groups Git for human beings group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[git-users] Re: Merging between multiple git svn repositories without the svn
One of our guys figured that out -- I'm posting here his solution in case someone will deal with a similar problem https://github.com/workflow-demo-org/workflow-demo/wiki/Merge-svn-branch-from-another-Git-repo-that-Git-thinks-is-unrelated y. On Monday, July 20, 2015 at 10:16:27 AM UTC-4, Yenda Trmal wrote: Guys, this might be a trivial or already answered question, but I'm not able to find anything on the subject (perhaps I'm not sure what to ask about in the git terminology). As a background -- we are planning to migrate Kaldi from the sf.net svn repository to github. There are already Kaldi repositories in github (created by git svn clone and pushing to github), created by independent developers. As far as I understand, looking at the sha sums, from git POV these are completely different repositories. Is there some way how to explain to git, that content-wise, these are the same directories? To give you a concrete example: Let's take these two repositories https://github.com/jtrmal/kaldi https://github.com/vimal-manohar91/kaldi-git They share the trunk (master), but when I clone my repo: git clone https://github.com/jtrmal/kaldi git remote add vimal https://github.com/vimal-manohar91/kaldi-git and then for example: git checkout dur-model git merge vimal/DCCA will generate a conflict for (possibly) every file in the repository and will auto-resolve most/some of them, but there still be ~1000 conflicted files. That is a nightmare. Is there some way how to explain git that these two repositories are (almost) the same, content-wise? Thanks a lot, yenda -- You received this message because you are subscribed to the Google Groups Git for human beings group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [git-users] copied form path is not set when using git svn merge/dcommit
As a work around, I'm doing merge in svn and git then, replacing the svn files with git files. But, is it hard to do something like... If a mergeinfo prop is added to a directory. For every file in that directory, before adding a file, go and check if that file was part of any revision. On Tue, Jul 21, 2015, 5:43 AM Konstantin Khomoutov flatw...@users.sourceforge.net wrote: On Mon, 20 Jul 2015 15:16:34 -0700 (PDT) Chidveer Reddy chidv...@gmail.com wrote: I have an SVN repo. Repo |_ branch 1 | |_trunk. 1. As an SVN user, i added a new file to branch 1 (file1.txt) 2. Now, i went to the git console and using git-svn, I did a fetch and merge to trunk (from branch 1 to trunk). Merge went well and i did a DCommit. 3. After dcommit the svn:mergeinfo properly was set properly. But, the file that i have added file1.txt was sent to svn as a new file it should be as copied-from-path. Screenshot as below. [image: Inline image 3] Note: If i do a merge in svn it will preserve the file inheritance, as the screenshot below. it says, the file Branch 5.6 file 1 -copy.txt came form branches/5.6/ [image: Inline image 1] I don't know the internals of git-svn, but I'm afraid you're out of luck here: Git does not keep any information about file copies and/or renames -- this concept simply does not exist in Git. So you can't really achieve 1-to-1 mapping between Git and Subversion. -- You received this message because you are subscribed to the Google Groups Git for human beings group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [git-users] adding a remote on a private branch.
On Mon, Jul 20, 2015 at 11:51:10PM -0700, dexter ietf wrote: Hi, i want to add a remote for a private branch. i have a parent repository call it (P). and two clones of P on different machines (a) and (b), call it Pa and Pb. now in machine (a) i want to create a private branch tracking Pb, how do i go about achieving this, any help is appreciated.. thanks! Add the remote using `git remote add ...`, then use `git fetch name of remote` to get the changesets, and then just check out the branch you want using `git checkout --track name of remote branch`. You should find this information easily in any online git tutorial, e.g. here http://git-scm.com/book/en/v2/Git-Branching-Remote-Branches /M -- Magnus Therning OpenPGP: 0xAB4DFBA4 email: mag...@therning.org jabber: mag...@therning.org twitter: magthe http://therning.org/magnus The British have the perfect temperament to be hackers--technically skilled, slightly disrespectful of authority, and just a touch of criminal behavior. -- Mary Ann Davidson, Oracle's Security Chief -- You received this message because you are subscribed to the Google Groups Git for human beings group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout. signature.asc Description: PGP signature