With a Git/Github background and knowing very little about Bazaar VCS, I would like to occasionally report a bug to Launchpad and even send a patch. I'd like to do it in a "proper" way so that it's ready for merging or improvement while not getting in way.
I can't seem to find a decent simple How-to suited for my needs.
So what I did so far:
I have created a Launchpad account,
reported the bug,
installed Bazaar and setup SSH keys etc.
Now if it was Github, I'd
fork the repo,
clone the forked repo,
create a sanely named branch and do the work,
commit + push,
create a pull request using Github WUI.
But it's not Github, and both LP and Bazaar architectures seem quite different from their Github/Git cunterparts.
So could a kind soul save me from drowning in tons of documents and complile a straightforward step path, mainly the second part? Possibly including relevant CLI commands when they are needed?
Edit: It seems that I should clarify if I'm asking specifically about Ubuntu packages (whatever it means) or Launchpad packages.
I don't really care much about distinction between Ubuntu packages and non-Ubuntu packages. Any software could be in Ubuntu today and out of it tomorrow, or vice-versa. The development is what matters much more than distribution.
Ao I was assuming that
not every single package distributed in Ubuntu is hosted on Launchpad,
an "official" or "default" workflow for Launchpad exists (well if all devs can
agree on using Bazaar, why couldn't most of them agree on a patching workflow?),
so I'm asking about the Launchpad way, not the Ubuntu way. And I chose AU because since the intersection is vast, I guess it's pretty on topic here.
I'm hosting a project in Github, but now I purchased a plan with Dreamhost that includes shell access and Git.
Github [Origin]
/ \
pull/ \pull
/push push\
/ \
Laptop Dreamhost
(cloned) (cloned)
I would like to delete my repo from Github, and starting push directly to DH.
How do I change origin in my Laptop, and should I delete the origin in Dreamhost?
I'm searching for compelling git and Mercurial clients on Mac OS X. The most clients I've found so far were less compelling as I expected. Some of the clients are programmed even in ruby or tcl/tk, which IMO aren't good OSX citizens in regard of integration in the OS.
I've clients in mind similar to Versions.app or Cornetstone which are subversion-only clients. Perhaps somebody got an insider tip for me.
I'm a big fan of backing things up. I keep my important school essays and such in a folder of my Dropbox. I make sure that all of my photos are duplicated to an external drive. I have a home server where I keep important files mirrored across two drives inside the server (like a software RAID 1).
So for my code, I have always used Subversion to back it up. I keep the trunk folder with a stable copy of my application, but then I create a branch named with my username, and inside there is my working copy. I make very few changes between commits to that branch, with the understanding that the code in there is my backup.
Now I'm looking into Mercurial, and I must admit I haven't truly used it yet so I may have this all wrong. But it seems to me that you have a server-side repository, and then you clone it to a working directory in the form of a local repository. Then as you work on something, you make commits to that local repository, and when things are in a state to be shared with others, you hg push to the parent repository on the server.
Between pushes of stable, tested, bug-free code, where is the backup?
After doing some thinking, I've come to the conclusion that it is not meant for backup purposes and it assumes you've handled that on your own. I guess I need to keep my Mercurial local repositories in my dropbox or some other backed-up location, since my in-progress code is not pushed to the server.
Is this pretty much it, or have I missed something? If you use Mercurial, how do you backup your local repositories? If you had turned on your computer this morning and your hard drive went up in flames (or, more likely, the read head went bad, or the OS corrupted itself, ...), what would be lost? If you spent the past week developing a module, writing test cases for it, documenting and commenting it, and then a virus wipes your local repository away, isn't that the only copy?
So then on the flip side, do you create a remoterepository for every local repository and push to it all the time?
How do you find a balance? How do you ensure your code is backed up? Where is the line between using Mercurial as backup, and using a local filesystem backup utility to keep your local repositories safe?
I'm using the post-receive-email script included with git. (Source is here.) It works just fine, but I want each email to be sent from the author of the commits pushed. How do I do it?
My post-receive file currently looks like this, and I want to customize the from-email-address.
#!/bin/sh
export [email protected]
$(dirname $0)/post-receive-email
I'm trying to use tags for release management in git--I create a tag for each release. I'd like to be able to create release notes by listing the comment titles for every commit since a tag, or between 2 tags. I can't seem to find any way to do this.
The project I'm currently working on is using Trac, with SVN integration. It's worked great until now. Now, however, we've taken on some additional developers and we're running into issues with branching and merging. Because of this, I think a move to a distributed version control system is in order.
The problem is that Trac is very closely integrated with the SVN repository. We have tight integration between the tickets and the revision numbers of code changes corresponding to those tickets. In addition we have a support wiki that has a lot of data that helps the tech. support team. Is there a way we can migrate to git or mercurial without losing the benefits of Trac? I've looked at the git plugin for Trac, and I'm unsure of how well it works. Has anyone here used it with a project that's been migrated from SVN?
EDIT: I should note that the most important priority for us is maintaining the links between Trac tickets and the corresponding changesets in SVN. That's a tool that we use every day, and it provides an easy way to jump to code changes when reviewing tickets. Wiki migration would be nice to have, but if it's not possible, we can continue to run the old system whilst we write some kind of a one-off script to migrate the content.
When coding, I naturally often come up with classes or a set of classes with a high reusability. I'm looking for an easy, straight-forward way to work on them separately.
I'd like to be able to easily integrate them into any project; it also should be possible to switch to a different version with as few commands as possible.
Am I right with the assumption that git (or another VCS) is best suited for this? I thought of setting up local repositories for each class/project/library/plugin and then just cloning/pulling them. It would be great if I could reference those projects by name, not by the full path. Like git clone someproject.
edit: To clarify, I know what VCS are about and I do use them. I'm just looking for a comfortable way to store and edit some reusable pieces of code (including unit tests) separately and to be able to include them (without the unit tests) in other projects, without having to manually copy files. Apache Maven is a good example, but I'm looking for a language-independent solution, optimally command-line-based.
I've read this question and the answers, but what isn't clear to me is WHO creates the "changes that do not appear in any parent".
Is it the git merge algorithm screwing up?
Or is it because the user has to manually adjust the conflicts to get the thing to build, introducing new code which wasn't in either parent?
This has been a big question mark on my mind.
I'm moving to Mercurial or Git very soon for my web software, and sometimes my branches require significant database changes which other branches should not see. This, I can't always share the same database for my branches.
Is there some standard way of dealing with database changes for branching and cloning? What do you all do? I'm using MySQL.
Our project uses Git as the version control system and recently I needed to review someone's commits. How can I see a list of commits made by a specific user?
I want to force git to checkout files under Windows using just LF not CR+LF. I checked the two configuration options but I was not able to find the right combination of settings.
I want it to convert all files to LF and keep the LF on the files.
Remark: I used autocrlf = input but this just repairs the files when you commit them. I want to force it to get them using 'LF'.
Some complex subversion merges are coming up in my project: big branches that have been apart for a long time. Svn gives too many conflicts.
Would it be any good to use git-svn just for the benefit of making the merge more manageable?
(perhaps due to its powerful content model)
Can you recommend other alternatives (eg. svk) to lessen the merge pain?
Thanks in advance.
Using Git or Mercurial, how would you know when you do a clone or a pull, no one is checking in files (pushing it)? It can be important that:
1) You never know it is in an inconsistent state, so you try for 2 hours trying to debug the code for what's wrong.
2) With all the framework code -- potentially hundreds of files -- if some files are inconsistent with the other, can't the rake db:migrate or script/generate controller cause some damage or inconsistencies to the code base?
If you're using Git from the command line, is there a way to delete in one fell swoop all the files to be deleted in the Changed but not updated list? Rather than doing manual removes using wildcards.
Given a situation where there are three branches, A, B and C, where A is merged to both B and C on a regular basis. From time to time B is merged to C. With Subversion, B apparently must be removed and recreated after every merge to C. This raises groans from colleagues, but would any alternative do any better? It would seem to me that Mercurial would not. Perhaps Git?
Does anyone else run into this problem?
I've got two branches that are fully merged together.
However, after the merge is done, I realise that one file has been messed up by the merge (someone else did an auto-format, gah), and it would just be easier to change to the new version in the other branch, and then re-insert my one line change after bringing it over into my branch.
So what's the easiest way in git to do this?
What Obj-C/C libraries have you used for manipulating git repos in your Mac apps?
I am working on a Mac app that I would like to be able to clone and modify git repos. Using git directly is not an option as it is GPL and I'd like to sell my app commercially without opening the source. I've seen libgit2, which I could link, but I'm not sure how to do that properly, and it doesn't appear to implement any of the things necessary for pushing/pulling repos over the git protocol.
Hi folks,
i'm using Remote Desktop on Windows 7 RC1, connecting to a Windows 2008 server.
Everytime i start a connection, i get the following popup window :-
The certificate problem makes sense - it was created from my own server, which is not an offical certificate authority. Sure. So I need to tell my machine that any certificate that comes from my server, can u please accept.
So i View the certificate and install it. I let it determine the best place to install it.
eg
Unfortunately, every time i connect, i still get that popup question.
So i tried to manually tell where to install it. I said to install it at
eg.
but still i get the warning question.
So .. does anyone have any suggestions?
When pulling from GIT my Team City install is getting an out of memory error.
According to the Team City documentation I should be able to increase the memory assigned to the git fetch process, by setting the value for teamcity.git.fetch.process.max.memory to something greater than the default 512MB.
http://confluence.jetbrains.net/display/TCD65/Git+%28JetBrains%29#Git%28JetBrains%29-InternalProperties
Problem is there does not appear to be an internal.properties file in the location specified.
I have tried creating one in the TeamCity/conf/internal.properties as suggested here:
http://devnet.jetbrains.net/thread/302596
But I still get the out of memory issue when Team City tries to pull from github
thx
We're talking about piloting VDI here, but the more research I do, the more it seems like it would make more sense just to upgrade and expand our TS (RDS) environment. I feel like you can pull off more sessions per core on RDS than on any VDI solution I've looked at. Is this the case?
Is there a decision matrix anywhere describing the benefits of using full virtualized desktops over using a remote desktop farm?
We need good video performance for clinical imaging - will this work better on one infrastructure or the other?
(Does this question have a specific enough answer for it to be on SF? Regardless, I feel like having this here will be helpful for someone in the future...)