Çözemediğim garip bir sorun yaşıyorum. İşte olanlar:
Bir github deposunda, orada olmasını istemediğim bazı günlük dosyalarım vardı. Dosyaları git geçmişinden tamamen kaldıran bu komut dosyasını buldum:
#!/bin/bash
set -o errexit
# Author: David Underhill
# Script to permanently delete files/folders from your git repository. To use
# it, cd to your repository's root and then run the script with a list of paths
# you want to delete, e.g., git-delete-history path1 path2
if [ $# -eq 0 ]; then
exit 0are still
fi
# make sure we're at the root of git repo
if [ ! -d .git ]; then
echo "Error: must run this script from the root of a git repository"
exit 1
fi
# remove all paths passed as arguments from the history of the repo
files=$@
git filter-branch --index-filter "git rm -rf --cached --ignore-unmatch $files" HEAD
# remove the temporary history git-filter-branch otherwise leaves behind for a long time
rm -rf .git/refs/original/ && git reflog expire --all && git gc --aggressive --prune
Tabii önce bir yedekleme yaptım ve sonra denedim. İyi çalışıyor gibiydi. Daha sonra git push -f yaptım ve aşağıdaki mesajlarla karşılandım:
error: Unable to append to .git/logs/refs/remotes/origin/master: Permission denied
error: Cannot update the ref 'refs/remotes/origin/master'.
Yine de her şey yolunda gitmiş gibi görünüyor, çünkü dosyalar GitHub deposundan gitmiş gibi görünüyor, eğer tekrar denersem ve basarsam aynı şeyi elde ederim:
error: Unable to append to .git/logs/refs/remotes/origin/master: Permission denied
error: Cannot update the ref 'refs/remotes/origin/master'.
Everything up-to-date
DÜZENLE
$ sudo chgrp {user} .git/logs/refs/remotes/origin/master
$ sudo chown {user} .git/logs/refs/remotes/origin/master
$ git push
Everything up-to-date
Teşekkürler!
DÜZENLE
Uh Oh. Sorun. Bütün gece bu proje üzerinde çalıştım ve değişikliklerimi yapmaya gittim:
error: Unable to append to .git/logs/refs/heads/master: Permission denied
fatal: cannot update HEAD ref
Yani ben:
sudo chown {user} .git/logs/refs/heads/master
sudo chgrp {user} .git/logs/refs/heads/master
İşlemi tekrar deniyorum ve şunu elde ediyorum:
error: Unable to append to .git/logs/HEAD: Permission denied
fatal: cannot update HEAD ref
Yani ben:
sudo chown {user} .git/logs/HEAD
sudo chgrp {user} .git/logs/HEAD
Ve sonra işleme işlemini tekrar deniyorum:
16 files changed, 499 insertions(+), 284 deletions(-)
create mode 100644 logs/DBerrors.xsl
delete mode 100644 logs/emptyPHPerrors.php
create mode 100644 logs/trimXMLerrors.php
rewrite public/codeCore/Classes/php/DatabaseConnection.php (77%)
create mode 100644 public/codeSite/php/init.php
$ git push
Counting objects: 49, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (27/27), done.
Writing objects: 100% (27/27), 7.72 KiB, done.
Total 27 (delta 15), reused 0 (delta 0)
To git@github.com:IAmCorbin/MooKit.git
59da24e..68b6397 master -> master
Yaşasın. Ben atlamak http://GitHub.com ve depo kontrol ve yerde bulunabilir benim son taahhüt hayırdır. :: kazı kazan :: Bu yüzden tekrar itiyorum:
Everything up-to-date
Umm ... öyle görünmüyor. Bu sorunu daha önce hiç yaşamadım, bu github ile ilgili bir sorun olabilir mi? yoksa git projemle bir şeyler mi karıştırdım?
DÜZENLE
Boşver, basit bir şey yaptım:
git push origin master
ve iyi itti.