Update documentation for git migration#240
Conversation
|
@hellsworth What would be the best way to handle review/landing of these changes? Would it be easier, for all pages that are updated, to create a new page for git and keep the old one for mercurial? For example, we could have a page named "Hello World Example (Mercurial)" followed by a page named "Hello World Example (Git)". A bit more work on my end, but that would allow us to review/land this earlier rather than having to time it with the day/week we switch over to Git. Another thought, I've made several updates to switch searchfox URLs to GitHub URLs. I could remove those changes, or split them into a different commit. I'm not sure how desirable those changes will be. Having a separate commit would allow them to be reverted more easily if need be. |
|
@coreycb I don't know if having a separate commit for replacing the searchfox is really worth the effort, because it is unlikely that we would want to revert all of those link replacements. Instead of having two sets of pages (one for mercurial and one for git), we could modify the pages to perhaps contain two sets of links. For example, in the first link change I see in this PR, it is currently changing to But instead of replacing one link with another we could change it to something like The downside of this approach is two-fold:
What do you think about this hybrid link approach? |
|
Yes, that's a good idea. I'll make the updates so that we can retain the old link and the new one together. The other concern I have is that we'll want to land these changes the week of the git migration, which (hopefully) will be in mid-later June. We could get it reviewed early once I make the above changes, and then I can keep it rebased weekly. My concern is mostly that something major lands ahead of it and I need to rebase on the busy week when we migrate to git. Do all reviews go through you? Maybe once we get two weeks out from git migration we could hold off on landing other changes until this lands? |
|
Well yes all reviews of this repo go through mostly me but also there aren't a ton of changes going in frequently. There is a large change set that I'm managing from the gitbook front end for the Contributor Journey overhaul but that won't come until after your changes so nbd there. So weekly rebases are the most you would need. Don't expect something major to land ahead of this. Are there similar changes that you're making to source-docs, because other teams (like design) are working on major changes there that might need to be coordinated. |
This change updates the documentation to account for the source code moving from Mercurial to Git. Closes thunderbird#239
|
Sorry for the delay. These are the only changes that I'm planning. These changes are ready for review now. They can't land yet, but a review would be great. We're getting close to setting a date for the github migration. |
hellsworth
left a comment
There was a problem hiding this comment.
Thanks Corey! Just a few minor nits.
| | Thunderbird 136.0a1 soft code freeze | Jan 27–Feb 3 | | ||
| | Thunderbird 136.0a1 pre-merge review | Jan 30 | | ||
| | Thunderbird merge 136.0a1 central → beta | Feb 3 | | ||
| | Thunderbird merge 136.0a1 main → beta | Feb 3 | |
There was a problem hiding this comment.
since this particular merge was done before our move to git, should it remain indicative of the mercurial branch comm-central?
| ### Git | ||
|
|
||
| As noted in the [Setting up a build environment page](../setting-up-a-build-environment.md), both `mozilla-central` and `comm-central` are repositories using the Mercurial version control system. This means you will need to install Mercurial. Here are the quick commands to use for common Linux based operating systems but for a more complete list of instructions (if neither of these works for your use case), please see [Mercurial's download page on their wiki](https://www.mercurial-scm.org/wiki/Download). | ||
| As noted in the [Setting up a build environment page](../setting-up-a-build-environment.md), both Firefox and Thunderbird source are stored in Git repositories. This means you will need to install Git if it is not already available. Here are some quick commands to install on common distributions: |
There was a problem hiding this comment.
change "both Firefox and Thunderbird source" to "both Firefox and Thunderbird sources"
| ### Git | ||
|
|
||
| As noted in the [Setting up a build environment page](../setting-up-a-build-environment.md), both `mozilla-central` and `comm-central` are version controlled with Mercurial. This means you will need to install Mercurial. Here is a quick command to install it with mercurial but for a more complete list of instructions, please see [Mercurial's download page on their wiki](https://www.mercurial-scm.org/wiki/Download). | ||
| As noted in the [Setting up a build environment page](../setting-up-a-build-environment.md), both Firefox and Thunderbird source are stored in Git repositories. This means you will need to install Git if it is not already available. Here is a quick command to install it: |
There was a problem hiding this comment.
change "both Firefox and Thunderbird source" to "both Firefox and Thunderbird sources"
|
|
||
| {% hint style="warning" %} | ||
| Before you start, make sure that the version you checked out is not busted. For `hg` tip, you should see green Bs on [https://treeherder.mozilla.org/#/jobs?repo=comm-central](https://treeherder.mozilla.org/#/jobs?repo=comm-central) | ||
| Before you start, make sure that the version you checked out is not busted. For `git` tip, you should see green Bs on [https://treeherder.mozilla.org/#/jobs?repo=comm-central](https://treeherder.mozilla.org/#/jobs?repo=comm-central) |
There was a problem hiding this comment.
is "tip" still a thing with our move to git? If not, maybe we want to say "For the top of the git main branch"
| ## Update and Build Again | ||
|
|
||
| To pull down the latest changes, in the mozilla directory run the following commands: | ||
| To pull down the latest changes, in the firefox directory run the following commands: |
There was a problem hiding this comment.
change "firefox" to "Firefox"
| ## Accounts | ||
|
|
||
| Accounts are simple containers for incoming servers and identities. They are defined by [`nsIMsgAccount`](https://searchfox.org/comm-central/source/mailnews/base/public/nsIMsgAccount.idl) and implemented by [`nsMsgAccount`](https://searchfox.org/comm-central/source/mailnews/base/src/nsMsgAccount.cpp). If you're looking to use something in a mail account, you'll probably first get a reference to an `nsIMsgAccount`. | ||
| Accounts are simple containers for incoming servers and identities. The are defined by `nsIMsgAccount`([git link](https://github.com/thunderbird/thunderbird-desktop/blob/main/mailnews/base/public/nsIMsgAccount.idl), [searchfox link](https://searchfox.org/comm-central/source/mailnews/base/public/nsIMsgAccount.idl)) and implemented by `nsMsgAccount`([git link](https://github.com/thunderbird/thunderbird-desktop/blob/main/mailnews/base/src/nsMsgAccount.cpp), [searchfox link](https://searchfox.org/comm-central/source/mailnews/base/src/nsMsgAccount.cpp)). If you're looking to use something in a mail account, you'll probably first get a reference to an `nsIMsgAccount`. |
There was a problem hiding this comment.
change "The are defined by.." to "They are defined by.."
| Firefox main mirrors to mozilla-central, and Thunderbird main mirrors to comm-central. CI/CD is run against mozilla-central and comm-central. | ||
| {% endhint %} | ||
|
|
||
| Sheriffs aim to merge changes to Firefox main at (very roughly) 0400, 1000, 1600 and 2200 UTC. After a merge, something should land on Thunderbird main to start a new build. Land something of your own or check for bugs flagged [checkin-needed](https://bugzilla.mozilla.org/buglist.cgi?keywords=checkin-needed-tb). |
There was a problem hiding this comment.
change [checkin-needed] to [checkin-needed-tb]
This change updates the documentation to account for the source code moving from Mercurial to Git.
The following sections still need updating:
./mach trythunderbird-development/fixing-a-bug/try-server.mdCloses #239