Remote "Origin" does not support the LFS locking API - gitkraken

I have received the following message when trying to push a commit on GitKraken - Gitkraken - Remote "Origin" does not support the LFS locking API.
I have not idea what LFS and do not require it, please could someone tell me how to disable this? Does it need to be done through the command line or is there an option just to disable it on the Gitkraken interface?

Related

Git Not Allowing to push changes to remote Repo

I have been facing the following error everytime I try to push changes to a remote repository:
"ERROR: Write access to repository not granted.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists. "
I have the SSH keys already set I am able also to git pull and git clone with no problems, the issue is just when I try to push changes.
Do you have any idea about ow to solve it ??
I am using a MacOs .
Thank you in advance for your time.
I removed the SSH keys from github account also I generated them again on my machine and added them again in my github account, but no luck so far.

Git (LFS) fails because "LFS: Put" is forbidden

I want to push some changes to my own git LFS repository on GitHub, which is a fork of another project, but when I try to do that, I get an error
> git push origin develop-imb:develop-imb
LFS: Put "https://github-cloud.s3.amazonaws.com/alambic/media/somepath": Forbidden
LFS: Put "https://github-cloud.s3.amazonaws.com/alambic/media/someotherpath": Forbidden
error: failed to push some refs to 'https://github.com/nicolazilio/parkour-imb-mainz.git'
Does anybody have any clue as to what the problem is?
Even after a fork, LFS would be pushed to the original repo's assigned Content Delivery Network. You're not able to push LFS objects because there's a quota on the original public repo that would otherwise be vulnerable to abuse attacks. This is a safety measure on GitHub.com
The only "solutions" that I could think of are rather limited:
Use git lfs untrack, and try pushing these to your own fork without LFS. Optionally, you could install lfs on the fork, re-track them before pushing, and start using your own quota. This may be desirable on hard forks (e.g. not contributing back to upstream)
Ask to have write permission on the original public repo, if that's possible.
Ask the original public repo to stop using LFS.
See What is the workflow for Git LFS with forks? for another proposed answer. Even if they're speaking of Bitbucket, the same workflow would probably apply.

Cannot purge commit in a GitHub blob using BFG

I am trying to purge credentials in a file on an Enterprise GitHub repository by following the BFG instructions on a GH article.
I had first used BFG to remove the credentials using a regular (non-mirror) clone for all branches, but realized that this did not purge some historical commits.
So I first tried to purge the mirror clone's commit history as advised by the BFG's documentation. It succeeded but I could not git push --force everything due to remote rejected error for several Pull Requests.
Following the repo admin's advice, we deleted the PRs that were causing the error.
But now BFG fails to correct the issue locally, saying BFG aborting: No refs to update - no dirty commits found??.
Yet, when I visit a commit blob URL(i.e. <github_repo_path>/blob/<commit_id>/<filepath>) on the same repo, it still shows the problematic credentials.
So what allows this commit to be viewable online despite being undetected by BFG?
It is not a local cache issue since it is viewable in Private Mode as well. I emailed GitHub Support to ask if it is a server-side cache but did not hear back yet.
How could I target a specific commit blob? Is there any alternative solution that uses BFG?

Can we create a pull request using command-line tooling?

As my browser was crashing I was not able to create a pull request from GitHub UI, I was trying to create a pull request from git console but didn't found any way to create a pull request.
I have also searched for the same over the net but most of the tutorials suggested to create a pull request from UIs only. I just want to be able to handle the pull request like creation, rejection, approved and merging without the browser. Please suggest.
git and github are separate products. github is a service that happens to use git, but it is not part of git, its UI is not a git interface, and git does not have any special support for github functionality.
There is a little potential confusion here, because there are "pull requests" - an integrated feature of github having to do with branch workflow - and there is git request-pull, a seemingly lesser-known feature of git which creates a text message you could send to another repository maintainer to request that they pull changes from your repository.
Naming confusion aside, the "pull request" you want is a feature of github, not git; and so git itself (including git console and any git UI tool) have no command for this. You have to use a github-supplied interface, and AFAIK that means the web UI.
To open a pull request from the command line, you can install the hub set of command-line tools that GitHub supports. This will allow you to create a pull request from a repository with:
hub pull-request
I'm not aware of any similar tools for managing pull requests, though.
git add -p
then
git commit -m "message"
then
git push origin "your_branch"
the pull request will be created in github

What does the Refspec HEAD:refs/for/refs/heads/master generated by eGit/ZendStudio 9 mean?

Is set up a Project from Git in ZendStudio 9. (basing on eclipse with eGit)
It generates a quiet normal fetch refspec:
Remote Fetch Specification +refs/heads/*:refs/remotes/original/*
But a very mysique push refspec:
Remote Push Specification HEAD:refs/for/refs/heads/master
In the remote i can see by "git ls-remote" the following:
8db575549dea67a45cea04358f902993c940c4d8 HEAD
16f0939153e6ef12b4596f0d4fb43fa5b8b0246b refs/for/refs/heads/master
8db575549dea67a45cea04358f902993c940c4d8 refs/heads/master
And i have on local machine the message by "git status":
On branch master
Your branch is ahead of 'original/master' by 5 commits.
So, please pay Attention, because my Question is not "What does it means"...
My Question is:
What does this workflow means? What is the Sense?
What is this generated Ref on the Server "refs/for.." for?
Isn't it better to work on a local branch instead of having a ref on the server to push?
Thanks in advance.
One, a usual Gerrit related refspec should be (as commented by jszakmeister in "Gerrit Code Review - Uploading Changes")
HEAD:refs/for/branchname
So, if anything, it should have been
HEAD:refs/for/master
But in your case, you don't need that kind of refspec (since you don't have Gerrit)
Is this a usual way to commit,
No, it is not.
is it a bad default, worth nothing?
In your case, yes, it isn't useful.
This could be a side effect of what this thread mentions:
Indeed, Gerrit is integrated and shipped together with EGit feature. Currently there is no way to disable Gerrit from within Zend Studio.
The bug 347077 "Make Gerrit features Optional" is still open.
the OP tweini comments:
To go out of this trap, iI had to realize, that this ref is creating a branch on remote without a remote tracking branch associated with it.
But to get rid of it is pretty easy:
Change push refspec in .git/config to push = refs/heads/master:refs/heads/master,
Push your local repo to remote git push
Delete the branch on remote git push --delete origin refs/for/refs/heads/master