Updates from the Repl.it team about the product

← Back to all posts
Feedback for git support + the new GitHub integration
h
replitjeremy (46)

Hi All!
Git support + the new integration with GitHub is in the process of rolling out!
When the feature is enabled for you, we'd love to hear how we could improve, and what additions you'd like to see.

feedback so far:

from @mat1:
"is there a way to create a .gitignore file? I tried making one but nothing happens when I press enter."

We're working on supporting this soon!

from @Vandesm14:
"Is this live? I don't see the git sidebar. Is this an explorer-only feature?"

We're currently in the process of rolling the feature out to everyone. Some users have it enabled currently.

Commentshotnewtop
ssebastianoo (3)

How can I disconnect a repo?

replitjeremy (46)

Hi @ssebastianoo, to disconnect from github, you can open the shell (Command/Control + Shift + S) and enter git remote remove origin

mat1 (2973)

Wow very epic, bee man.

MatthewDoan1 (255)

@mat1 Yup, somebody's been playing Minecraft snapshots.

mat1 (2973)

@MatthewDoan1 Yes, Minecraft invented bees.

PDanielY (633)

@mat1 "No, they didn't" r/whoosh

PaoloAmoroso (129)

@replitjeremy a current issue is the inability of omitting an .env file from commits.

replitjeremy (46)

This will be fixed soon! I'll update here when it's out for everyone.

replitjeremy (46)

@PaoloAmoroso Apologies this took so long, should be fixed! I just verified with a 'C' repl

raw (5)

Is there a way to sync with an existing repo rather than only being able to create a new one?

raw (5)

Lol, nevermind. Just realized you can import an existing repo from the New Repl screen.

hayaodeh (177)

@raw where did you expect to find it?

V3rmillionNet (53)

Nice stuff, now i can upload and edit files more easily.

Works very well and the updates are sent almost instantly, and when you change something from github you can pull merge.

8/10 waiting for new features!

replitjeremy (46)

@V3rmillionNet Thanks for your feedback! What kind of features do you want to see?

V3rmillionNet (53)

The feature i like is more likely for the IDE itself, but to be able to upload folders and their sub directories (create new folders) so i could be able to upload a whole project to repl it without having to move each file to their dir. @replitjeremy

V3rmillionNet (53)

Or simply being able to set up github pages inside repl.it, dunno @replitjeremy

replitjeremy (46)

@V3rmillionNet This should work if you make a web repl named {GITHUB_USERNAME}.github.io and push it to github!

Franky1 (1)

I would like to see also GitLab supported, since i use it a lot more for my private repos.

PDanielY (633)

It isn't working for me when trying with a typescript repo

replitjeremy (46)

@PDanielY oof, we don't support git in typescript right now :(. I'll remove the button from the sidebar. Thanks for reporting!

mebird (0)

@replitjeremy Any plans to support TS? I'd love to have a copy of my code on git w/out manually porting it over, but I don't know if that's possible.

replitjeremy (46)

hey @mebird, we plan on adding git for all of our supported languages eventually, but it may take a while to get there. I'll make a note that people are especially interested in TS!

EchoCoding (260)

Awesome feature! Really streamlined my work!

PaoloAmoroso (129)

@replitjeremy I've played a bit with the new version control features and they're so cool and well designed my grin doesn't want to go away. Here are some initial impressions and suggestions.

I'd prefer Repl.it to optionally not access any organizations and related repos I'm a member of but I don't own. And I'd like to pick which email address to use for commits among the ones registered with GitHub.

When creating a repo it would be useful for Repl.it to optionally add a well stuffed, language-sepcific .gitignore and README.md file (like GitHub offers at repo creation), as well as a LICENSE file with the default Repl.it license (MIT, if I recall correctly).

When the REPL detects changes to the source files and the repo origin is Repl.it, there's a Commit & Push button in the commit dialog. Maybe I'm not too familiar with the Git/GitHub jargon and the way these tools work, but I'd expect the action to also synchronize (push?) the local Repl.it changes with the remote GitHub repo. Instead I have to switch the origin to GitHub and click Push in the commit dialog.

This is a minor source of confusion though and, once clarified, it's no longer an issue.

replitjeremy (46)

Hey @PaoloAmoroso, thanks for all the great feedback!

I'll try to break it all down and address it here:
1. Repl.it accessing orgs/non-owned repos

We'll only ever access repositories that you connect to on Repl.it, and will never do anything related to GitHub data without an explicit action on your side. Also, if you don't own or have push access to a repo, we won't have permission to let you edit that code from Repl.it either :)
pick an email address to use with GitHub
We are planning to support this!
.gitignore, README.md, and a LICENSE file
we'll be adding support for hidden files soon, which will allow us to give the option to auto-include a .gitignore
currently working on a checkbox to add a README when you connect to GitHub
great call on the license file, I'll look into that
confusion about pushing locally vs. to GitHub
We're removing the dropdown, so that once you connect to GitHub, any push will go there as well without requiring extra user action.

PaoloAmoroso (129)

@replitjeremy Thanks for the clarifications and updates, here are some additional thoughts.

I misunderstood the required access permissions when connecting my GitHub account. Now it makes sense.

Removing the dropdown should indeed streamline and clarify the workflow.

PaoloAmoroso (129)

@replitjeremy The dropdown is gone from my Repl.it test REPL, now there's a Connect to GitHub button. After clicking it I click Create GitHub repository and get the error Unable to create a GitHub repository Let us know if there is an issue. The GitHub repo I initially created from Repl.it is still on GitHub.

replitjeremy (46)

@PaoloAmoroso Are you trying to create a repository with the same name of an existing one on GitHub? The GitHub API prevents us from doing that.

If you'd like to create a new repl that links to an existing GitHub Repo, add the github URL as a part of the 'new repl' form.

PaoloAmoroso (129)

@replitjeremy I actually did nothing special after setting up a fresh REPL to test Repl.it's new version control features.

I created a fresh REPL, went through the Repl.it version control set up flow to give Repl.it access to my GitHub account and create the repo there, and did a few commits. When I came back to the REPL after you said you were going to remove the Repl.it/GitHub dropdown, the dropdown was indeed gone and clicking the option to connect to GitHub issued the error I mentioned earlier.

pmarchwiak (1)

Is there a way to request this for my account? I'm teaching a class and interested in seeing if this could work for our students.

replitjeremy (46)

hey @pmarchwiak, you can make yourself an explorer, which will turn on all experimental features. Head to https://repl.it/account and expand the "roles" section

AlvinSeville19 (1)

How to merge and rebase branches? I don't see this possibilities via Repl.it interface.

matthewrkitson (0)

I'd like to second the request to be able to choose username and email address used for commits.

In particular, if you've got "don't share my email address" selected as an option in your github repository, repl.it can't push any changes (as they're attributed to your private github email address).

ma173 (1)

Great new features, still advising colleagues to use Repl.it when programming in their free time! :)

What bugs me about version control is that I don't see how I can merge a branch with another.
Aside from the existing master branch I created a develop branch. When I wanted to try out something more on that, I created an experimental branch for my repl/repo.
Then the feature I wrote on the experimental was ready for the develop branch but I didn't find any button for that merge action which to me seems to be standard in version control - otherwise I'd have to copy all code from experimental to develop once it's advanced enough and then make a new commit to develop.

Am I missing something? Sorry if that's been asked and answered before and thanks in advance!

replitjeremy (46)

Hey @ma173, great question. Are you connected to github by chance, or are you doing everything as a local repository?

Merging would be a great addition to the product! I'll chat with our designer about what that could potentially look like.

ma173 (1)

Hey @replitjeremy,
glad I could provide some helpful feedback!
I connected my github after struggling with finding a merging option which obviously made no difference to my problem.

So without merging what's the point of different branches after all? To just work on them separately and copying something you could need from one branch to another (which on mobile devices is even impossible)? :D

Sounds good, thanks for that and keep up the good work!

jeremypress (0)

@ma173 The idea when we built the GitHub integration is that you would push branches to GitHub and merge them as pull requests. This is a very common way to contribute to open source projects which was one of our goals for the feature. Doesn't make quite as much sense for a personal project though!

ma173 (1)

@jeremypress oh sure, forgot about GitHub supporting pull requests. And true, not that recommended for a personal project. But I just recognized the pull function in repl.it which I must've missed when coding on my smartphone (not the best coding environment, I admit). This makes versioning at least a bit easier :)

NonHacker (0)

it takes a while after you make a change before you can use it

replitjeremy (46)

@NonHacker thanks for your feedback, we're working on improving performance!

amurillog (1)

It seems I am not able to pull changes to master branch GitHub. I get a nice little message, that my repl repository is a few commits behind and a button to initiate the pull, this then seemingly does some action in the background (that fade-darker thing) but once the Version Control sidebar gets responsive again, nothing has changed and the message remains.

replitjeremy (46)

@amurillog Is it possible that you force pushed to the branch you are pulling from? We have a known issue where this prevents us from grabbing new changes.

amurillog (1)

@replitjeremy Well if i force pushed it, I didn't notice. I just use the <commit & push> button on Repl.
And in this case it is not preventing me from grabbing chages, it prevents me to save new ones (i guess, haven't check the GitHub page of my repo)
If u need more info, let me know

replitjeremy (46)

@amurillog can you paste the link to your repl (if public)? To confirm, you don't get an error message when trying to push, and you see a message that you are commits behind?

amurillog (1)

@replitjeremy
https://repl.it/@amurillog/marshmelos01
No eror message after clicking <commit & push>; and kinda, because the Version Control tab in repl.it tells me that i can save new changes.
However after click the button <commit & push>, the Version Control tab just fades out.
Just check the GitHub page, and the repo is not updated.

replitjeremy (46)

@amurillog I think I see what's going on. Git wasn't able to make a commit because you had an index.lock file. It's a git meta file that appears when something goes wrong during an action, e.g. it quicks in the middle of some action. I deleted the file from your repl, so it should be able to push again! Let me know how it goes.

amurillog (1)

@replitjeremy indeed, my edits have been saved in git hub. Domo arigato jazzman

Sonnysboy (0)

Can I unlink with github and then relink it to a seperate repo?

replitjeremy (46)

@Sonnysboy Can you explain more what you mean? Do you mean creating a new repl that is based on the same github repo?

Sonnysboy (0)

@replitjeremy For example, import a repo into a repl, then unlink the repo from the repl so I can push to a new repo.

replitjeremy (46)

@Sonnysboy ah, I understand. This isn't currently supported but I'll log the request!

Thecrowbar1234 (58)

Whenever I try to back it into github I have to connect to github and then I commit and it says I did it, but in github it doesn't say the things I commited

[deleted]

the .gitignore file is not used
I'm running a cpp file in a replit and the resulting a.out is being committed.

replitjeremy (46)

Hi @chordieapp, that is a known issue that we will address before the sidebar leaves beta. Thanks!

anantj (0)

Branches that have been deleted on GitHub can still be seen on the Repl !

replitjeremy (46)

@anantj good catch! I'll add this to our bug list, thanks.

DeltaRays (0)

Hello, when clicking on "Connect Repl.it to your Github account" I get redirected to https://repl.it/auth/github_rw/get?close=1 but then the website closes and I don't get authenticated

SnapDragon7410 (0)

Hello
why does it push my.env file
my confidential information has now become public
plz remove .env from ever commiting

replitjeremy (46)

Hi @SnapDragon7410 thanks for reporting, we'll resolve this soon.

[deleted]

When I commit + push, nothing seems to actually happen over at Github...

BD103 (18)

Just started testing this out. Looks good so far!

HarshitaBhardw1 (2)

Is there a way to push your code to github. I don't see it right now.

replitjeremy (46)

Hi @HarshitaBhardw1, what do you see? Did you add a repo via the the version control side bar and connect it to github?

HarshitaBhardw1 (2)

@replitjeremy I found the option. Thank you for your help.

PDanielY (633)

I keep getting an error saying I don't have access to push to the repo and that I should connect repl.it to GitHub again and I did but it still showed the same error. Things I did to the repo before it caused this error: I transferred the ownership from myself to another org (i don't think it is this error because I've done it with another repo and it didn't cause any error) and I changed the name

replitjeremy (46)

@PDanielY whoops sorry, changing the name should have no effect since github will redirect any actions from the old url to the new one. You're sure that you still have push permissions to the repo now that it's in another org?

replitjeremy (46)

@PDanielY what happens if you make a new repl from that repo?

megadrive (0)

I added a new branch using the + and it did not push to Github, so I have no way of getting the changes I made.

replitjeremy (46)

hey @megadrive, to push a new branch to GitHub, you'll need to make a commit with new changes. Creating a branch on its own doesn't push anything.

V3rmillionNet (53)

Why is 25Mb maximum when cloning a repo? Does this happen the same way when porting a repl to github?

Edit: Hacker plan gives you more Mb?

replitjeremy (46)

@V3rmillionNet The limit should be higher than that. Can you link the repo you're trying to clone?

Good idea for hacker plan