Merge remote-tracking branch 'origin/main'
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -122,6 +122,7 @@ cache/
|
||||
|
||||
#Renders
|
||||
renders/
|
||||
seq/
|
||||
|
||||
# Premiere
|
||||
*.prlock
|
||||
|
||||
@@ -1480,3 +1480,215 @@ Try adding a file and committing it first!
|
||||
|
||||
---
|
||||
|
||||
_**User**_
|
||||
|
||||
?
|
||||
|
||||
---
|
||||
|
||||
_**Assistant**_
|
||||
|
||||
**PROGRESS!** Now we're getting somewhere!
|
||||
|
||||
**What Just Happened:**
|
||||
|
||||
1. ✅ **Regular push worked!** - You pushed 5 objects (probably the new commit)
|
||||
2. ❌ **LFS push still fails** - But now it shows "0/100" instead of freezing
|
||||
3. ❌ **Still missing object** - `681b35716ef146959ba290a995ad3b1654a667b5c4ee0f63926965849040ef2d`
|
||||
|
||||
**The Good News:**
|
||||
|
||||
- Git is no longer completely frozen
|
||||
- The push is completing (shows "done")
|
||||
- You're making progress
|
||||
|
||||
**The Remaining Problem:**
|
||||
|
||||
You still have **corrupted LFS references** pointing to objects that don't exist anywhere. The server suggests:
|
||||
|
||||
```bash
|
||||
git lfs fetch --all
|
||||
```
|
||||
|
||||
**Try This:**
|
||||
|
||||
```bash
|
||||
git lfs fetch --all origin
|
||||
```
|
||||
|
||||
**What This Will Do:**
|
||||
|
||||
- Try to download the missing LFS objects from the server
|
||||
- Show you exactly which objects are missing
|
||||
- Help identify what's corrupted
|
||||
|
||||
**The Issue:**
|
||||
|
||||
Your repository has **ghost LFS objects** that are referenced but don't exist anywhere. The regular push worked because it only pushed the Git commits, but the LFS objects are still corrupted.
|
||||
|
||||
**Next Step:**
|
||||
|
||||
Run `git lfs fetch --all origin` to see what objects are actually missing and where they're supposed to come from.
|
||||
|
||||
---
|
||||
|
||||
_**User**_
|
||||
|
||||
I'm sick of putting in my user and pass every time
|
||||
|
||||
---
|
||||
|
||||
_**Assistant**_
|
||||
|
||||
**FUCK!** Now Git LFS is **crashing** with a panic error! This is getting worse.
|
||||
|
||||
**What Just Happened:**
|
||||
|
||||
1. ✅ **Found 309 objects** - Git LFS discovered a bunch of LFS objects
|
||||
2. ❌ **Panic crash** - `panic: runtime error: index out of range [0] with length 0`
|
||||
3. ❌ **Authentication bug** - The crash is in the auth system
|
||||
|
||||
**The Real Problem:**
|
||||
|
||||
Your repository is so corrupted that Git LFS is **crashing** when it tries to process the corrupted LFS references. The panic error suggests:
|
||||
|
||||
- Git LFS found 309 objects (way more than your 18 actual files)
|
||||
- But the auth system crashed when trying to process them
|
||||
- This is a **Git LFS bug** caused by corrupted data
|
||||
|
||||
**For the Password Issue:**
|
||||
|
||||
```bash
|
||||
# Store your credentials so you don't have to type them every time
|
||||
git config --global credential.helper store
|
||||
```
|
||||
|
||||
**But the Bigger Issue:**
|
||||
|
||||
Your repository has **309 corrupted LFS references** that are causing Git LFS to crash. This is beyond a simple fix.
|
||||
|
||||
**The Nuclear Solution:**
|
||||
|
||||
You might need to **start fresh**:
|
||||
1. Clone the repository again from scratch
|
||||
2. Or reset to a commit before the LFS corruption
|
||||
3. Or restore from a backup
|
||||
|
||||
**The Issue:**
|
||||
|
||||
Your repository has so many corrupted LFS references that Git LFS itself is crashing. This isn't a network problem - it's **data corruption** that's breaking the Git LFS tool itself.
|
||||
|
||||
Try the credential helper first, but be prepared that you might need to start over with a clean repository.
|
||||
|
||||
---
|
||||
|
||||
_**User**_
|
||||
|
||||
can I disable all tracking on files under directories named `/seq` ? like blends/seq/SPOE_A/SPOE_A_0139.png
|
||||
|
||||
---
|
||||
|
||||
_**Assistant**_
|
||||
|
||||
Yes! You can disable LFS tracking for files under directories named `seq`. Looking at your `.gitignore`, I can see you already have `seq/` in there, but you need to update your `.gitattributes` file to stop LFS from tracking those files.
|
||||
|
||||
**Update your `.gitattributes` file:**
|
||||
|
||||
```gitattributes
|
||||
# Keep LFS tracking for your main files
|
||||
*.mp4 filter=lfs diff=lfs merge=lfs -text
|
||||
*.blend filter=lfs diff=lfs merge=lfs -text
|
||||
*.fbx filter=lfs diff=lfs diff=lfs merge=lfs -text
|
||||
|
||||
# Disable LFS tracking for seq directories
|
||||
blends/seq/** filter= diff= merge= -text
|
||||
**/seq/** filter= diff= merge= -text
|
||||
```
|
||||
|
||||
**What This Does:**
|
||||
|
||||
- `**/seq/**` - Matches any file under any directory named `seq` anywhere in your repository
|
||||
- `filter=` - Removes LFS filtering (no more LFS tracking)
|
||||
- `diff=` and `merge=` - Removes LFS diff/merge handling
|
||||
- `-text` - Treats files as binary (prevents line ending issues)
|
||||
|
||||
**After Updating:**
|
||||
|
||||
```bash
|
||||
# Remove any existing LFS tracking for seq files
|
||||
git lfs untrack "blends/seq/**"
|
||||
git lfs untrack "**/seq/**"
|
||||
|
||||
# Commit the changes
|
||||
git add .gitattributes
|
||||
git commit -m "Disable LFS tracking for seq directories"
|
||||
```
|
||||
|
||||
**This Will:**
|
||||
|
||||
- Stop LFS from tracking new files in `seq` directories
|
||||
- Keep your existing LFS files (MP4s, Blends, FBXs) tracked
|
||||
- Prevent the 309 corrupted LFS references from growing
|
||||
|
||||
The `**/seq/**` pattern will catch files like `blends/seq/SPOE_A/SPOE_A_0139.png` and stop LFS from trying to track them.
|
||||
|
||||
---
|
||||
|
||||
_**User**_
|
||||
|
||||
i want to remove the tracking history specifically
|
||||
|
||||
---
|
||||
|
||||
_**Assistant**_
|
||||
|
||||
Ah, you want to **remove the LFS tracking history** for files under `seq` directories, not just stop future tracking. This is more complex because Git LFS has already committed the tracking history.
|
||||
|
||||
**To Remove LFS Tracking History:**
|
||||
|
||||
1. **First, update `.gitattributes` to stop future tracking:**
|
||||
```gitattributes
|
||||
# Disable LFS tracking for seq directories
|
||||
**/seq/** filter= diff= merge= -text
|
||||
```
|
||||
|
||||
2. **Remove the LFS tracking from Git history:**
|
||||
```bash
|
||||
# This will rewrite Git history to remove LFS tracking
|
||||
git filter-branch --tree-filter '
|
||||
find . -path "*/seq/*" -name "*.png" -exec git lfs untrack {} \;
|
||||
find . -path "*/seq/*" -name "*.png" -exec git rm --cached {} \;
|
||||
' --prune-empty --tag-name-filter cat -- --all
|
||||
```
|
||||
|
||||
**Or Use BFG (Cleaner Alternative):**
|
||||
```bash
|
||||
# Install BFG first, then:
|
||||
bfg --delete-files "*.png" --include "**/seq/**"
|
||||
git reflog expire --expire=now --all
|
||||
git gc --prune=now --aggressive
|
||||
```
|
||||
|
||||
**What This Does:**
|
||||
|
||||
- **Rewrites Git history** to remove LFS tracking for seq files
|
||||
- **Removes the corrupted LFS references** that are causing crashes
|
||||
- **Cleans up the repository** by removing the problematic tracking history
|
||||
|
||||
**Warning:**
|
||||
|
||||
This **rewrites Git history**, which means:
|
||||
- All commit hashes will change
|
||||
- You'll need to force push to update the remote
|
||||
- Anyone else with the repository will need to re-clone
|
||||
|
||||
**After Cleaning:**
|
||||
|
||||
```bash
|
||||
git push origin main --force
|
||||
```
|
||||
|
||||
This should fix your corrupted LFS state by removing the problematic tracking history for seq files.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user