summaryrefslogtreecommitdiffstats
path: root/g2h
diff options
context:
space:
mode:
Diffstat (limited to 'g2h')
-rw-r--r--g2h/cli.py2
-rw-r--r--g2h/commit_page.py14
-rw-r--r--g2h/page_factory.py4
3 files changed, 20 insertions, 0 deletions
diff --git a/g2h/cli.py b/g2h/cli.py
index 1391ec2..3d7028e 100644
--- a/g2h/cli.py
+++ b/g2h/cli.py
@@ -28,6 +28,8 @@ def main():
factory = PageFactory(args.out_dir, project_name)
factory.new_overview(branches, tags).render()
factory.new_log(commits, branches, tags).render()
+ for commit in commits:
+ factory.new_commit(commit).render()
if __name__ == '__main__':
main()
diff --git a/g2h/commit_page.py b/g2h/commit_page.py
new file mode 100644
index 0000000..325df85
--- /dev/null
+++ b/g2h/commit_page.py
@@ -0,0 +1,14 @@
+import os
+
+from .page import Page
+
+class CommitPage(Page):
+ def __init__(self, out_dir, name, commit):
+ super(CommitPage, self).__init__('commit.md', out_dir, os.path.join(commit.hexsha, 'index.md'), name)
+ self.commit = commit
+
+ def context(self):
+ return {
+ 'commit': self.commit,
+ 'title': self.name + ': ' + self.commit.hexsha
+ }
diff --git a/g2h/page_factory.py b/g2h/page_factory.py
index dae9675..f946e7a 100644
--- a/g2h/page_factory.py
+++ b/g2h/page_factory.py
@@ -1,3 +1,4 @@
+from .commit_page import CommitPage
from .overview_page import OverviewPage
from .log_page import LogPage
@@ -6,6 +7,9 @@ class PageFactory:
self.out_dir = out_dir
self.name = name
+ def new_commit(self, commit):
+ return CommitPage(self.out_dir, self.name, commit)
+
def new_overview(self, branches, tags):
return OverviewPage(self.out_dir, self.name, branches, tags)