Moving my public NPM package from Bitbucket to Github - github

I like Bitbucket better than Github, but sadly there's only very few options for continuous integration for Bitbucket.
The packages in question are written by me, and are currently hosted on Bitbucket:
https://www.npmjs.com/package/grunt-asset-compress
https://www.npmjs.com/package/node-file-parser
I want these to be moved to Github, without breaking anything. I am afraid changing the repository data is not enough.
"repository": {
"type": "git",
"url": "https://StephanBijzitter#bitbucket.org/skelware/grunt-asset-compress.git"
},
Image a user has version 1 installed, which is hosted on Bitbucket.
I then change the version to 2 and change the URL to the Github URL.
I proceed to push, to both Github and Bitbucket.
If the user updates, he will be updating to version 2, which by now includes the URL of Github.
I push some more fixes and release version 3 on Github, the user updates again and everything is fine.
However, what if the user did not update to version 2, before version 3 was released? NPM will probably try to download version 3 from Bitbucket as that is what the URL points to in version 1!
I do not want to keep the repositories in sync; I want to be able to make the Bitbucket repository private at one point to hide it from public view while the Github repository would then serve on its own.
What are the steps I need to take to be able to move to Github, without breaking the update system for the (albeit limited) users of my packages?

Just got a reply from NPM itself:
Hi, Stephan.
Thanks for the question. I'm hoping I can help...if I'm understanding
your inquiry correctly.
What ever you publish to npm is held within our own repository and
that is what's served to a user when they install your package. The
inclusion of the repository url, bitbucket or github, is more
informational as opposed to functional. Regardless of when you push
changes to github, the user that installs your package will get your
latest publish to npm. In other words, those two things may be in
different states and at different versions.
Please let me know if I'm off base. I'll be here to help. Ernie
In other words, for all I care I could remove the Bitbucket repository entire and nothing will break, as a copy is hosted on their servers which is served to everyone downloading it through NPM.
Thank you, Ernie!

Related

How can I 'unfork' in GitHub Desktop?

I have forked a public Github repo using the Mac GitHub Desktop client, so I can make some changes and submit them.
I have got my fork into a total mess (I am not used to working with forks) and want to start over, but I cannot find a way to tell the client my repo should track the original repo rather than my fork... it seems irrevocably bound to my fork.
How can I get the client app to forget I have a fork?
I'll put up what I found by trial and error, but someone might have a better way:
I basically deleted my repo (form) on Github, and automagically the GitHub client showed my local repo now linked to the original repo again. I was able to go through the process of creating a fork all over again with my changes.

Install BigBluebutton from your forked GitHub Repo, with your settings not the original repository

I create the settings on the git repository so i don't have to config again after the installation. The idea is to install from the github repo.
But, in the case of bigBluebutton, it gets the files from
https://ubuntu.bigbluebutton.org/bbb-install.sh . and when i check the file there is no reference to any github repository... so is not about changing urls only.
Could you put me in the right direction?
I want to do the same with open-edx
This question was asked recently in our bigbluebutton-setup forums
https://groups.google.com/d/msg/bigbluebutton-setup/NKMGDlqdHmk/DP7Tb0C3CgAJ
The short answer is we don't have any script that can update a production BigBlueButton instance with changes made to a forked version of BigBlueButton in GitHub. You would need to follow our docs to re-deploy the components that you update.

How to manage Django Project and its modules with git?

I've been looking for a solution how to manage my project with git for quite some time now. I want to have one instance as the main repo for connecting the entire project. Each app should be its own git instance.
During my search I found both git submodule and git subtree. For both tools I found an instruction how to insert an existing reppo. However, I am interested in how to proceed from the beginning. I mean here from the command $ django-admin startproject myproject Where do I enter the git init? When I create a new app
$ django-admin startapp new-app and how do I use this as subtree/submodule?
Until now I have always found instructions that refer to a remote repo. Is this always necessary? I am not sure if I want to publish every Django app on Github. But I want a version control system just for me. Is this possible?
I have to say that so far it has been enough to manage my "projects" locally. Now I want to work together with others and I don't want to install the whole Django Project locally but only provide me with single functions or modules.
It would be a great help if you could explain to me how that works.
TL;DR
How to manage (start and expand) a Django Project with git. The apps should be their own git repos.
The purpose of submodules is to allow you to graft an existing repo/library into your git. Rarely do you want to do this. Instead you want to use PIP tools to install your libraries as part of library management.
This is essentially a git question. If you don't have a remote repository, you can still use git. With that said, the reason you want a remote repository is so that you can collaborate with others, and have a stored version of the code separate from your workstation.
There are services that let you have private repos even without a paid account. Bitbucket is the most well known of these services and is comparable to Github in most ways.

Generating My Angular Project Release Notes with Standard Version

I created an Angular project using angular-cli and pushed it to GitHub. I then created a new branch and updated packages, installed standard-version and ran npm run release -- --first-release as instructed. I then pushed the whole into a new branch on GitHub, created a pull request, squashed and merged onto master, pulled back into local master, and ran standard-version again finally followed by git push --follow-tags origin master. Here's the state on GitHub:
All notes that I wrote in the pull request body are not visible in the changelog file, and they are obviously not in the chore(release) generated by standard-version. Why?
They are also not written within the Releases tabs at all, even though I can see the released tags there.
Should I have made the version 1.0.0 in packages.json before starting in order to adhere to semantic versioning?
What am I doing wrong?
You're not doing anything wrong. chore doesn't show up in CHANGELOG.md (see: https://github.com/conventional-changelog/standard-version/issues/135)
To have release notes uploaded, you will to use something like https://github.com/conventional-changelog/conventional-github-releaser
It's up to you where to start. Generally, when labeled 0.x, the project is still unstable and will go through vast API changes. When the project becomes stable, bump the major to 1.x and adhere to semver.

Using GitHub for issue tracking for a local Git repository

My company has a Git repository hosted on our servers. We use TortoiseGit. I would like to integrate it with GitHub Issues.
Is this possible? Note that we do not host our repository on GitHub.
I have tried using the bugtraq settings on TortoiseGit but it doesn't interact with the repository I've set up on GitHub.
I would like to integrate it with GitHub Issues. Is this possible?
Integrate in this context is a very open concept. Which integrations are you looking for? If you're not hosting the code on the repository itself, any kind of integration will be hard, but it really depends on your specific goal with GitHub Issues and which kind of triggers and links you want from your code to your issues.
From experience if I assume that by integration you mean linking Git commits in your local repository to GitHub Issues the clear answer is no.
So if you really want to use GitHub Issues without pushing the Git code upstream, have you considered creating an empty project to just use GitHub Issues and GitHub Projects. You won't be able to reference issues from the commit message, i.e., Fixed issue found in #4 but you can use it as a standalone project management tool.
Trello offers a free tier for project management that you might also want to check out.