Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Publishing course contents from a private repository

I have the following situation:

  • I have a (currently private) repo with materials for a course I am teaching, including lecture notes, homework assignments with sample solutions, and a small interpreter for students to write programs in an evolving course-specific toy language (plus a regression testing suite and examples)
  • I would like to share the lecture notes, assignments (but not the solutions) and the interpreter source (but not the sample solutions, regression suite, or most program examples)
  • Lecture notes, assignments, and the interpreter change rapidly as we go through the semester

Any advice on how to set up the repo or repos and how to manage them effectively, minimizing the possibility of error, and provide rapid updates for the students?

1 answer

0 votes
Ana Retamal Atlassian Team Sep 01, 2020

Hi @fpfenning,

Thanks for reaching out! I personally haven't used Bitbucket for these purposes before, but I'm going to throw some ideas that might help you achieve what you're looking for:

- As the contents are private, you'll need to grant access to your students. Regular accounts allow a maximum of 5 free accounts. If you qualify for an academic license, you can submit your application here. Otherwise, you can grant them read-only access (which will allow them to view, clone, and fork the repository code, create issues, comment on issues, and edit wiki pages, but not push changes) and they won't count towards your quota.

- For the things you don't want them to see, keep them in a separate repository.

- Depending on the contents and audience of your course, it might also be useful to have a simple website for an easy view. You can learn more about it at Publishing a website on Bitbucket Cloud

Those are the things that come to mind. If you have any questions, let us know and we'll be glad to help :)

Best regards,


Thanks, Ana, that's helpful.  The follow-up question is how I divide the material between two different repositories when they conceptually belong together.

For example, the regression tests would seem to belong with the implementation, but the implementation should be public and the regression tests (or other advanced examples that might be related to homeworks) private.

Similarly, the sample solutions belong with the homework assignments because a change to one often implies a parallel change to the other, but one should be visible to the students while the other is not.

Is there a reasonable workflow where there is a master repo with everything (and remains private) and a derivative repo to which I can "publish" only those files that should be available to the students (and would be public)?  I don't know git well enough to how set up the pair of repos and a reasonable set of scripts to keep them suitably synchronized.  The idea would be to only directly change the private master repo and then export the visible changes to the derivative public repo.

Please let me know what you think.



Suggest an answer

Log in or Sign up to answer
Community showcase
Published in Bitbucket

Powering DevOps with Bitbucket Server & Data Center

Hi everyone, The Cloud team recently announced 12 new DevOps features that help developers ship better code, faster   ! While we’re all excited about the new improvements to Bitbucket ...

1,849 views 0 7
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you