Git eclipse always needs to pull out a completely updated project

I have this weird behavior from git, and even if I describe it from the eclipse egit plugin, from the terminal I will have the same problem.
I have a project in the workspace that is shared between me and other developers, when I synchronize the project, it tells me that I need to click something like 14/16 commit ant I need to pull it out, even if there was no commit at all. Each time I try, it seems that the project is now synchronized, so I click "team syncronize" again and the 14/16 commit to pull appears again.
This is not the only strange thing, the other is that I can push the commit to the remote after I pulled these commits, but other developers couldn’t, even if they do the same thing that I did, he tells them that the problem is the dangling drop.
Before writing some of the solutions that I found and what I tried, I want to say that the number of commits is almost the entire history of the project.
I tried using the gc git manual in the remote repository after I made fsck, where I met effectively two dangling commits (why do two dangling commits and egit say one is dangling blob? I don’t know ....), it deleted two dangling commits, so I deleted the project from my workspace, cloned it again, but the same error will happen again.
So I used this other solution http://www.tekkie.ro/news/howto-remove-all-dangling-commits-from-your-git-repository/ , always in the remote repository, but the problem is the same.
So even if I read almost all the documentation, I didn’t part and nothing:
1) what is the difference between cheating and sagging blob?
2) how does a torn commit / blob happen?
3) how can I restore a project repository?
UPDATE
I start generosity because I really want to take responsibility and solve the problem, so for this I will be clear that I need to understand:
I have a project that every time I use the syncronized command, I want to drag the whole story not only for me, but for each of my colleagues, we use gitblit as remote repos. What can I do? Where should I look for possible errors?
UPDATE
what is egit enter image description here

and what terminal enter image description here

+5
source share
1 answer

This is just the answer to some of your problems, maybe it should leave a comment.

Records and blobs (blobs contain the contents of the file) are all objects in the DAG git, and the object becomes “hanging out” (inaccessible, orphaned or free) when nothing is referenced (i.e. is not part of the story) and git will clear the dangling objects, if you run git gc (removes dangling objects older than 2 weeks), and some git commands also run git gc --auto when they are executed with their operations.

When you make changes to the DAG (i.e., redirect, modify, or add content to the index), some objects will be replaced with new ones, and old objects will become overhanging.

You can run git fsck --unreachable to find objects that hang.

Note. Objects referenced by reflog are usually not considered dangling.

In your case, you may need to run git prune , git gc --agressive or git gc --prune=now to remove all the dangling objects (do not forget to make bakup first, just in case)

0
source

All Articles