Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial commit #23

Closed
venomdev opened this issue Apr 2, 2020 · 12 comments
Closed

Initial commit #23

venomdev opened this issue Apr 2, 2020 · 12 comments

Comments

@venomdev
Copy link

venomdev commented Apr 2, 2020

Does the plugin need to create the initial commit?

Wouldn't this be better to perform the 'git init' then allow the developer to add files for the initial commit?

@twaritwaikar
Copy link
Contributor

So far we haven't got any requests to not do a git commit just after git init, so we have kept it in. However, this can be taken out if enough requests arise

@jackkinsey
Copy link

I'd prefer to control the contents of the initial commit. Not a big deal, though.

@twaritwaikar
Copy link
Contributor

Thanks @jackkinsey I would like to keep this issue open to gather all requests to remove the initial commit. If this issue gets traction then there is no question keeping it.

@aaronfranke
Copy link
Member

I've always wanted to have an initial commit, and I just add the project files to the 2nd commit. Wanting to not have an initial commit seems like an edge case feature.

If #43 is implemented, you could just amend your files into the initial commit, so this proposal wouldn't really be relevant anymore.

@twaritwaikar
Copy link
Contributor

twaritwaikar commented Aug 12, 2020

Making an initial commit actually saves us from handling a bunch of edge cases in the other areas of the plugin. If amending get implemented then will just do an amend instead of committing the files the first time

@jiri
Copy link

jiri commented May 22, 2021

I'd be in favour of not influencing the structure of the repository whatsoever with the plugin.

As for initial commits as a concept, I seem to recall git specifically introduced features to make them unnecessary (like git rebase --root), which might hint at their presence not being "proper" git etiquette.

@Xrayez
Copy link

Xrayez commented Jul 6, 2021

In other editors (like in VS Code), I always have a habit of creating "Initial commit" message with all files staged. I don't quite see the point of having an empty commit for initial commit. I've ran into situation where I ended up with a seemingly duplicate "Initial commit" commits, but then I figured that git plugin already did this for me, which is unexpected. 😛

So yeah, I'd also prefer to have better control over this, especially when this would make the behavior consistent with other Git integrations.

Wanting to not have an initial commit seems like an edge case feature.

It's not a problem of not wanting an initial commit, it's a problem of redundancy, the expectation is that initial commit should have all files staged. But since it's not always the case that all files must be staged for initial commit, it makes sense to me to disable this behavior and let users control the contents of initial commits themselves.

@jiri
Copy link

jiri commented Jul 6, 2021

Wanting to not have an initial commit seems like an edge case feature.

Let's also not conflate wanting to have an initial commit with wanting a plugin to create an initial commit. If you enabled git integration in Visual Studio Code and it did a whole bunch of commits on it's own like creating a .gitignore file, fixing line endings and formatting your code, you'd find the defense of "Not wanting to have a gitignore file seems like an edge case feature" feeble to say the least.

Lets make tools that help us code, not tools that code for us 😄

@twaritwaikar
Copy link
Contributor

twaritwaikar commented Jul 7, 2021

Likely a hint can be passed from the editor on whether or not the user wants an initial commit.

However, making any change to Godot means that it will only land in the next release.

If we just change the plugin to drop making any initial commits and handle any edge cases that arise because of that then it would be instantly workable with Godot 3.2+. So we have a decision here on if we want the plugin to think less on its own OR think ahead only when the user instructs it to (with the exception that it will have to wait for the next Godot 3.x version)

@Xrayez
Copy link

Xrayez commented Jul 7, 2021

Likely a hint can be passed from the editor on whether or not the user wants an initial commit.

I'm in favor of having an editor setting for that to be honest, but unfortunately Godot is very picky when it comes to making something configurable, so not sure if that's really going to be an option. There are other stuff which could be made worth configurable, like username/email/credentials if a developer/designer haven't configured those themselves (which actually prevents from committing, last time I tested), but that's for another proposal. Yet I really don't know whether it's possible to define editor settings from within GDNative in the first place.

It's also a question of whether all VCS providers have a notion of "Initial commit", perhaps this is specific to git (I haven't used other VCS other than svn when I had to contribute to code at SourceForge).

@twaritwaikar
Copy link
Contributor

We can have configuration options coming directly from the plugins as well, so that can be figured out. However, how the editor chooses to persist those settings is another problem to solve.

IIRC The v2 of this plugin already has the feature that takes in a username and password and uses it for pushing

@twaritwaikar
Copy link
Contributor

The Godot 3.5 beta1 is now live. And along with it, we released a v2.0.0 of this plugin which should fix this issue. Creating an initial commit is now left up to the user.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants