Difference between revisions of "Pacman Development"

From ArchWiki
Jump to: navigation, search
(External References and Links: update/refresh links)
(wikify some external links, use https for archlinux.org)
(12 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{Template:Stub}}
+
[[Category:Pacman development]]
 
+
 
Interested in Pacman Development? This page should help you get started.
 
Interested in Pacman Development? This page should help you get started.
  
 
Remember that if '''you''' think something belongs on this page, add it! The current pacman developers are not likely to know what people need to know and should be on this page.
 
Remember that if '''you''' think something belongs on this page, add it! The current pacman developers are not likely to know what people need to know and should be on this page.
  
==External References and Links==
+
==References and Links==
  
* [http://archlinux.org/pacman/ Pacman Homepage]
+
* [https://archlinux.org/pacman/ Pacman Homepage]
* [http://projects.archlinux.org/pacman.git/plain/NEWS?id=HEAD Latest NEWS/ChangeLog]
+
* [https://projects.archlinux.org/pacman.git/plain/NEWS?id=HEAD Latest NEWS/ChangeLog]
* [http://projects.archlinux.org/pacman.git/ Pacman Git Web Interface]
+
* [https://projects.archlinux.org/pacman.git/ Pacman Git Web Interface]
* [http://mailman.archlinux.org/pipermail/pacman-dev/ Mailing List Archives]
+
* [[Pacman Roadmap]]
* [http://www.nabble.com/pacman-dev-f16443.html ML Archives with search engine]
+
 
* [http://archlinux.org/pacman/HACKING.html HACKING]
+
* [https://mailman.archlinux.org/pipermail/pacman-dev/ Mailing List Archives]
* [http://archlinux.org/pacman/submitting-patches.html Submitting Patches]
+
 
* [http://archlinux.org/pacman/translation-help.html Translation Help]
+
* [https://archlinux.org/pacman/HACKING.html HACKING]
 +
* [https://archlinux.org/pacman/submitting-patches.html Submitting Patches]
 +
* [https://archlinux.org/pacman/translation-help.html Translation Help]
 +
 
 +
* IRC: #archlinux-pacman on irc.freenode.net
  
 
==Developer Repositories==
 
==Developer Repositories==
Line 21: Line 24:
  
 
===Allan McRae===
 
===Allan McRae===
Web: http://projects.archlinux.org/users/allan/pacman.git/<br/>
+
Web: https://projects.archlinux.org/users/allan/pacman.git/<br/>
 
Clone: git://projects.archlinux.org/users/allan/pacman.git<br/>
 
Clone: git://projects.archlinux.org/users/allan/pacman.git<br/>
Clone: http://projects.archlinux.org/git/users/allan/pacman.git
+
Clone: https://projects.archlinux.org/git/users/allan/pacman.git
  
 
===Dan McGee===
 
===Dan McGee===
Line 35: Line 38:
 
Clone: https://github.com/falconindy/pacman.git
 
Clone: https://github.com/falconindy/pacman.git
  
===Nagy Gabor===
+
==Git Tips==
Web: http://repo.or.cz/w/pacman-ng.git<br/>
+
Clone: git://repo.or.cz/pacman-ng.git<br/>
+
Clone: http://repo.or.cz/r/pacman-ng.git
+
  
===Xavier Chantry===
+
Before using these tips, it is highly recommended to read the [[Super Quick Git Guide]].
Web: http://code.toofishes.net/cgit/xavier/pacman.git/<br/>
+
Clone: git://code.toofishes.net/xavier/pacman.git<br/>
+
Clone: http://code.toofishes.net/git/xavier/pacman.git
+
 
+
==GIT Cheat Sheet==
+
 
+
Before using the git cheat sheet, it is highly recommended to read the [[Super_Quick_Git_Guide]]
+
  
 
Clone git repo - only needed once
 
Clone git repo - only needed once
Line 53: Line 46:
  
 
Enable useful hooks
 
Enable useful hooks
   chmod +x .git/hooks/{applypatch-msg,commit-msg,pre-commit,pre-rebase}
+
   mv .git/hooks/applypatch-msg.sample .git/hooks/applypatch-msg
 +
  mv .git/hooks/commit-msg.sample .git/hooks/commit-msg
 +
  mv .git/hooks/pre-commit.sample .git/hooks/pre-commit
 +
  mv .git/hooks/pre-rebase.sample .git/hooks/pre-rebase
  
Create branch "<branch>"
+
Always do your work on a new local branch to save yourself headaches.
  git branch <branch>
+
  
Work with branch "<branch>"
+
Make patch to master branch
  git checkout <branch>
+
 
+
Commit changes on current branch and make patch to master branch
+
  git commit -a -s
+
 
   git format-patch master
 
   git format-patch master
  
 
Amend patch (Don't use it after a push)
 
Amend patch (Don't use it after a push)
 
   git commit -a --amend -s
 
   git commit -a --amend -s
 
Add file "<file>"
 
  git add <file>
 
 
Remove file "<file>"
 
  git rm <file>
 
 
Remove branch "<branch>"
 
  git branch -D <branch>
 
  
 
Update master branch
 
Update master branch
Line 85: Line 67:
  
 
Get maint branch
 
Get maint branch
  git branch -r
 
 
   git checkout -b maint origin/maint
 
   git checkout -b maint origin/maint
  
 
Add a remote repository
 
Add a remote repository
   git remote add toofishes http://code.toofishes.net/gitprojects/pacman.git
+
   git remote add toofishes git://code.toofishes.net/dan/pacman.git
  
 
Get toofishes working branch
 
Get toofishes working branch
 
   git branch -r
 
   git branch -r
 
   git checkout -b toofishes-working toofishes/working
 
   git checkout -b toofishes-working toofishes/working

Revision as of 04:08, 3 December 2012

Interested in Pacman Development? This page should help you get started.

Remember that if you think something belongs on this page, add it! The current pacman developers are not likely to know what people need to know and should be on this page.

References and Links

  • IRC: #archlinux-pacman on irc.freenode.net

Developer Repositories

A handful of the "regulars" have their own repositories with work in progress, working and feature branches, etc. Several are listed here, but feel free to add more that you may know about.

Allan McRae

Web: https://projects.archlinux.org/users/allan/pacman.git/
Clone: git://projects.archlinux.org/users/allan/pacman.git
Clone: https://projects.archlinux.org/git/users/allan/pacman.git

Dan McGee

Web: http://code.toofishes.net/cgit/dan/pacman.git/
Clone: git://code.toofishes.net/dan/pacman.git
Clone: http://code.toofishes.net/git/dan/pacman.git

Dave Reisner

Web: https://github.com/falconindy/pacman
Clone: git://github.com/falconindy/pacman.git
Clone: https://github.com/falconindy/pacman.git

Git Tips

Before using these tips, it is highly recommended to read the Super Quick Git Guide.

Clone git repo - only needed once

 git clone git://projects.archlinux.org/pacman.git pacman

Enable useful hooks

 mv .git/hooks/applypatch-msg.sample .git/hooks/applypatch-msg
 mv .git/hooks/commit-msg.sample .git/hooks/commit-msg
 mv .git/hooks/pre-commit.sample .git/hooks/pre-commit
 mv .git/hooks/pre-rebase.sample .git/hooks/pre-rebase

Always do your work on a new local branch to save yourself headaches.

Make patch to master branch

 git format-patch master

Amend patch (Don't use it after a push)

 git commit -a --amend -s

Update master branch

 git checkout master
 git pull

Merge changes on master with "<branch>"

 git rebase master <branch>

Get maint branch

 git checkout -b maint origin/maint

Add a remote repository

  git remote add toofishes git://code.toofishes.net/dan/pacman.git

Get toofishes working branch

  git branch -r
  git checkout -b toofishes-working toofishes/working