git filter-repo

admin | 22. ledna 2026 3:39

petr@nereknu:/mnt/c/Users/Petr/Desktop/usb$ git init
Initialized empty Git repository in /mnt/c/Users/Petr/Desktop/usb/.git/
petr@nereknu:/mnt/c/Users/Petr/Desktop/usb$ git add .
petr@nereknu:/mnt/c/Users/Petr/Desktop/usb$ sudo apt install git-filter-repo
[sudo] password for petr:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following package was automatically installed and is no longer required:
  libllvm19
Use 'sudo apt autoremove' to remove it.
The following NEW packages will be installed:
  git-filter-repo
0 upgraded, 1 newly installed, 0 to remove and 42 not upgraded.
Need to get 104 kB of archives.
After this operation, 351 kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu noble/universe amd64 git-filter-repo all 2.38.0-2 [104 kB]
Fetched 104 kB in 1s (134 kB/s)
Selecting previously unselected package git-filter-repo.
(Reading database ... 65616 files and directories currently installed.)
Preparing to unpack .../git-filter-repo_2.38.0-2_all.deb ...
Unpacking git-filter-repo (2.38.0-2) ...
Setting up git-filter-repo (2.38.0-2) ...
Processing triggers for man-db (2.12.0-4build2) ...
petr@nereknu:/mnt/c/Users/Petr/Desktop/usb$ git commit -a -S -m "Init"

petr@nereknu:/mnt/c/Users/Petr/gitB$ git clone --no-local ../Desktop/usb/ usb-temp
Cloning into 'usb-temp'...
remote: Enumerating objects: 130, done.
remote: Counting objects: 100% (130/130), done.
remote: Compressing objects: 100% (130/130), done.
remote: Total 130 (delta 2), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (130/130), 349.80 MiB | 10.13 MiB/s, done.
Resolving deltas: 100% (2/2), done.
Updating files: 100% (125/125), done.

petr@nereknu:/mnt/c/Users/Petr/gitB$ cd usb-temp

petr@nereknu:/mnt/c/Users/Petr/gitB/usb-temp$ git filter-repo --to-subdirectory-filter usb
Parsed 1 commits
New history written in 6.64 seconds; now repacking/cleaning...
Repacking your repo and cleaning out old unneeded objects
Updating files: 100% (250/250), done.
HEAD is now at d1cb006 USB backup
Enumerating objects: 131, done.
Counting objects: 100% (131/131), done.
Delta compression using up to 12 threads
Compressing objects: 100% (128/128), done.
Writing objects: 100% (131/131), done.
Total 131 (delta 2), reused 129 (delta 2), pack-reused 0
Completely finished after 48.32 seconds.

petr@nereknu:/mnt/c/Users/Petr/gitB/usb-temp$ cd ..

petr@nereknu:/mnt/c/Users/Petr/gitB$ git remote add usb usb-temp
petr@nereknu:/mnt/c/Users/Petr/gitB$ git fetch usb
remote: Enumerating objects: 131, done.
remote: Counting objects: 100% (131/131), done.
remote: Compressing objects: 100% (128/128), done.
remote: Total 131 (delta 2), reused 131 (delta 2), pack-reused 0
Receiving objects: 100% (131/131), 349.80 MiB | 15.03 MiB/s, done.
Resolving deltas: 100% (2/2), done.
From usb-temp
 * [new branch]      master -> usb/master

petr@nereknu:/mnt/c/Users/Petr/gitB$ git merge usb/master --allow-unrelated-histories -m "Merge usb"

petr@nereknu:/mnt/c/Users/Petr/gitB$ ls
usb  usb-temp

petr@nereknu:/mnt/c/Users/Petr/gitB$ git status
On branch master
Untracked files:
  (use "git add <file>..." to include in what will be committed)
    usb-temp/

nothing added to commit but untracked files present

petr@nereknu:/mnt/c/Users/Petr/gitB$ rm -rf usb-temp

petr@nereknu:/mnt/c/Users/Petr/gitB$ git status
On branch master
nothing to commit, working tree clean

petr@nereknu:/mnt/c/Users/Petr/gitB$ git log
commit d1cb006e63c6542492e24530da5dadc8e56a994b (HEAD -> master, usb/master)
Author: Petr Brezina <to@nereknu.cz>
Date: Thu Jan 22 02:52:46 2026 +0100

    USB backup

petr@nereknu:/mnt/c/Users/Petr/gitB$ ls usb
Kopie - Ucetnictvi.xls
Ucetnictvi.xls
graspo_ftp.zip
nereknu_ruzne_verze.zip
Spanelština_pro_samouky_seste_vydani_2022
alarmy_+_energie.zip
nereknu_graphQL.zip
zaloha.rar

petr@nereknu:/mnt/c/Users/Petr/gitB/usb$ git status
On branch master
nothing to commit, working tree clean

petr@nereknu:/mnt/c/Users/Petr/gitB/usb$ git log
commit d1cb006e63c6542492e24530da5dadc8e56a994b (HEAD -> master, usb/master)
Author: Petr Brezina <to@nereknu.cz>
Date: Thu Jan 22 02:52:46 2026 +0100

    USB backup

petr@nereknu:/mnt/c/Users/Petr/gitB$ git remote add origin git@github.com:brezipe/gitB.git

petr@nereknu:/mnt/c/Users/Petr/gitB$ git push
fatal: The current branch master has no upstream branch.

petr@nereknu:/mnt/c/Users/Petr/gitB$ git push -u origin main
error: src refspec main does not match any

petr@nereknu:/mnt/c/Users/Petr/gitB$ git push -u origin master
Enter passphrase for key '/home/petr/.ssh/id_ed25519':
ERROR: Repository not found.

petr@nereknu:/mnt/c/Users/Petr/gitB$ git remote add origin git@github.com:brezipe/BU001.git
error: remote origin already exists.

petr@nereknu:/mnt/c/Users/Petr/gitB$ git remote remove origin
petr@nereknu:/mnt/c/Users/Petr/gitB$ git remote add origin git@github.com:brezipe/BU001.git

petr@nereknu:/mnt/c/Users/Petr/gitB$ git push -u origin master
Enter passphrase for key '/home/petr/.ssh/id_ed25519':
Enumerating objects: 131, done.
Counting objects: 100% (131/131), done.
Delta compression using up to 12 threads
Compressing objects: 100% (128/128), done.
Writing objects: 100% (131/131), 349.80 MiB | 1.68 MiB/s, done.
Total 131 (delta 2), reused 131 (delta 2), pack-reused 0
remote: Resolving deltas: 100% (2/2), done.
remote: warning: See https://gh.io/lfs for more information.
remote: warning: File usb/nereknu_ruzne_verze.zip is 62.86 MB; this is larger than GitHub's recommended maximum file size of 50.00 MB
remote: warning: File usb/zaloha.rar is 95.70 MB; this is larger than GitHub's recommended maximum file size of 50.00 MB
remote: warning: GH001: Large files detected. You may want to try Git Large File Storage - https://git-lfs.github.com.
To github.com:brezipe/BU001.git
 * [new branch]      master -> master
branch 'master' set up to track 'origin/master'.

petr@nereknu:/mnt/c/Users/Petr/gitB$

Sidebar

Lorem ipsum dolor, sit amet consectetur adipisicing elit. Magnam doloremque hic consequatur numquam porro quos maiores sit. Recusandae sint eaque maxime provident neque est, consequuntur aspernatur eius veritatis soluta ab.

Know more!