Frank Ralf (talk | contribs) |
Frank Ralf (talk | contribs) |
||
Line 16: | Line 16: | ||
== Deleting master branch == | == Deleting master branch == | ||
Don't know whether this is a good idea but I accidentally messed up my local Moodle 1.9 master branch by fetching Moodle 2.1 on top of it ... | Don't know whether this is a good idea but I accidentally messed up my local Moodle 1.9 master branch by fetching Moodle 2.1 on top of it ... | ||
* See the discussion in the Moodle General Developer Forum: [http://moodle.org/mod/forum/discuss.php?d=181720 Git: deleting local "master" branch] | |||
=== Moodle 1.9 === | === Moodle 1.9 === |
Revision as of 15:34, 22 July 2011
Cloning Moodle to your local installation
- See Git for Administrators, the following screenshots illustrate the steps described there.
Cloning to a new folder
Moodle branches
Checkout
Deleting master branch
Don't know whether this is a good idea but I accidentally messed up my local Moodle 1.9 master branch by fetching Moodle 2.1 on top of it ...
- See the discussion in the Moodle General Developer Forum: Git: deleting local "master" branch
Moodle 1.9
That's the result:
Moodle 2.0
Updating your Moodle installation
git fetch
Following the Sam Hemelryk/My Moodle Git workflow:
fetch
merge
Maintaining your own contributed code
Copying the plug-in code to your Moodle installation
Making Git ignore your code
Put the folder names for your own code into the .git/info/exclude file in your Moodle clone, as the following excerpt from .gitignore describes:
# Example: if you deploy a contributed plugin mod/foobar into your site, put # the following line into .git/info/exclude file in your Moodle clone: # /mod/foobar/
That's how it looks:
# git ls-files --others --exclude-from=.git/info/exclude # Lines that start with '#' are comments. # For a project mostly in C, the following would be a good set of # exclude patterns (uncomment them if you want to use them): # *.[oa] # *~ /blocks/firephp /filter/autolinkhijacker
Setting up a remote repository on GitHub
See the instructions at:
Cloning the remote GitHub repository to your local Moodle installation
- Change to the parent folder for your plug-in
- Clone the repository:
git clone https://nakohdo@GitHub.com/nakohdo/moodle-filter_autolinkhijacker.git
- Rename the folder to your plug-in's name
- Open Git Bash in that folder
Creating a local branch
- Open Git Bash in the plug-in folder
- Create new branch:
git branch MOODLE_19_STABLE
- Change to the new branch:
git checkout MOODLE_19_STABLE
- Both steps in one:
git checkout -b MOODLE_19_STABLE
- Both steps in one:
Creating a remote branch
Note: It might be better using "remote" first to create the remote branch. And usually it's best if both branches have the same name. --Frank Ralf 12:59, 18 July 2011 (WST)
- Change to the correct local branch
git push origin -u MOODLE_19_STABLE
- Using different names for local and remote branch:
$ git push origin local_19_STABLE:MOODLE_19_STABLE
- Using different names for local and remote branch:
Deleting a remote branch
$ git push origin :testbranch
http://stackoverflow.com/questions/2003505/how-do-i-delete-a-git-branch-both-locally-and-in-github
Git GUI (aka GitTk)
For launching the command line commands from a GUI. This will automatically be installed together with "Git for Windows" and is equally accessible from the explorer context menu.
Visualize branch history
See also
- Moodle forum discussions
- GIT help needed
- Best way to manage CONTRIB code with GIT
- Handy Git tip for tracking 3rd-party modules and plugins
- Moodle Git repositories
- External resources
- Stackoverflow resources