# list all branches, local and remote $ git branch -av # update remote list $ git remote update origin --prune
Pokazywanie postów oznaczonych etykietą update. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą update. Pokaż wszystkie posty
2016-05-06
Git: aktualizacja listy branchy na lokalnej maszynie
2013-02-24
[kohana][php] Upgrade z wersji 3.1 do 3.3
Oczywiście jak to przy zmianie wersji frameworka kohana (po dłuższym czasie) jest niezła zabawa z dostosowaniem aplikacji. Zmian jest sporo - poniżej przedstawiam te, które udało mi się zarejestrować szybko przerabiając swoją własną stronkę, która wcześniej stała na wersji 3.1:
Zmienia się wielkość liter katalogów i plików w aplikacji. Na przykład zamiast
application/classes/model/flickr.php
musi być
application/classes/Model/Flickr.php
Jeśli ktoś używał odpalał ten moduł w bootstrap.php to musi z tego zrezygnować.
Należy w bootstrap.php (np po i18n) wpisać coś takiego:
Trzeba zmienić w pliku konfiguracyjnym 'type' z 'mysql' na 'MySQL'.
źródło: http://stackoverflow.com/questions/13043412/error-when-using-auth-with-orm-driver-kohana-3-3-0
Przestaje istnieć - teraz zamiast dawnego:
Wygląda teraz mniej więcej tak u mnie:
Zamiast:
Zamiast:
Zamiast:
To tyle w mocno telegraficznym skrócie... wg mnie są to dobre zmiany! :)
Więcej informacji: http://kohanaframework.org/3.3/guide/kohana/upgradingguide/kohana/upgrading
Zmiana wielkości liter
Zmienia się wielkość liter katalogów i plików w aplikacji. Na przykład zamiast
application/classes/model/flickr.php
musi być
application/classes/Model/Flickr.php
Brak modułu kohana_cache
Jeśli ktoś używał odpalał ten moduł w bootstrap.php to musi z tego zrezygnować.
Cookie salt
Należy w bootstrap.php (np po i18n) wpisać coś takiego:
Cookie::$salt = 'Your-Salt-Goes-Here';źródło: http://forum.kohanaframework.org/discussion/8873/cookie-salt-problem/p1
Konfiguracja MySQL
Trzeba zmienić w pliku konfiguracyjnym 'type' z 'mysql' na 'MySQL'.
źródło: http://stackoverflow.com/questions/13043412/error-when-using-auth-with-orm-driver-kohana-3-3-0
Odczyt danych z pliku konfiguracyjnego
Przestaje istnieć - teraz zamiast dawnego:
$config = Kohana::config('nazwa_pliku_konfiguracyjnego');
plik konfiguracyjny odpalamy następująco:$config = Kohana::$config->load('nazwa_pliku_konfiguracyjnego');
Main request
Wygląda teraz mniej więcej tak u mnie:
$request = Request::factory();
$response = $request->execute()->send_headers(TRUE);
if($response->body()){
$total = array(
'{memory_usage}' => number_format((memory_get_peak_usage() - KOHANA_START_MEMORY) / 1024, 2).'KB',
'{execution_time}' => number_format(microtime(TRUE) - KOHANA_START_TIME, 2).' s.'
);
echo $response->body(strtr((string) $response, $total));
}
Redirect
Zamiast:
$this->request->redirect(Url::base(FALSE, FALSE).'start');mamy teraz:
$this->redirect(URL::base(FALSE, FALSE) . 'start');źródło: http://stackoverflow.com/questions/13088601/kohana-errorexception-fatal-error-call-to-undefined-method-requestredirec
Query builder
Zamiast:
$count = $q_count->select('count("*") AS ilosc')->group_by('tytul','tresc')->execute()->get('ilosc');
mamy teraz:$count = $q_count->select(array(DB::expr('COUNT(*)'),'ilosc'))->group_by('tytul','tresc')->execute()->get('ilosc');
źródło: http://kohanaframework.org/3.3/guide/database/query/builderParametry funkcji action
Zamiast:
public function action_index($kod=''){}
mamy teraz:public function action_index(){ $kod = $this->request->param('kod'); }
To tyle w mocno telegraficznym skrócie... wg mnie są to dobre zmiany! :)
Więcej informacji: http://kohanaframework.org/3.3/guide/kohana/upgradingguide/kohana/upgrading
2013-01-10
[psql] Wyciągnięcie id z inserta i wykorzystanie go w innym insercie
Tym razem problem SQL'owy. Miałem dziś potrzebę stworzenia zapytania, które rozpisze dane z pewnej tabeli do dwóch powiązanych ze sobą tabel. Potrzebowałem w tym celu id zapisywanej pozycji aby móc ją wykorzystać w innym insercie. Tutaj z pomocą przyszła mi możliwość utworzenia w PostgreSQL funkcji oraz triggerów.
Jako pierwsze stworzyłem funkcję insert_po_insercie() za pomocą której dokonuję operacji na tej drugiej tabeli (posiadając już id):
create function insert_po_insercie()
returns trigger
as $$
begin
insert into table_02 (ido, idm, komentarz, idp, idupr, iddest) values ('0', '0', 'testowy komentarz', new.idp, (select id from upr where kod='ewus'), new.id);
return new;
end;
$$ language plpgsql;
Później stworzyłem triggera insert_po_insercie, który wygląda tak:
create trigger insert_po_insercie after insert on table_01 for each row execute procedure insert_po_insercie();Widać tutaj, że po insercie do tabeli table_01 wywoływana jest funkcja insert_po_insercie(). Mając już tak funkcję i triggera można wykonać inserty do tabeli table_01:
INSERT INTO table_01 (id_operacji, data_czas_operacji, idp) SELECT id_operacji, data_czas_operacji, idp FROM guilty_table;W funkcji przy tworzeniu inserta skorzystałem z świeżo utworzonego id (new.id) oraz przy okazji idp (new.idp), które również było mi potrzebne. Można w ten sposób pobierać dowolną kolumnę z tabeli źródłowej. Funkcja poza pokazanym na przykładzie insertem może robić wiele innych czynności. Na przykład po insercie można umieścić update do jeszcze innej tabeli, w której z kolei skorzystamy z id nowoutowrzonego inserta:
create function insert_po_insercie()
returns trigger
as $$
begin
insert into table_02 (ido, idm, komentarz, idp, idupr, iddest) values ('0', '0', 'testowy komentarz', new.idp, (select id from upr where kod='ewus'), new.id);
update table_03 set idx=currval('table_02_id_seq'::regclass) where id=new.id;
return new;
end;
$$ language plpgsql;
Całość wygląda zatem tak:
create function insert_po_insercie()
returns trigger
as $$
begin
insert into table_02 (ido, idm, komentarz, idp, idupr, iddest) values ('0', '0', 'testowy komentarz', new.idp, (select id from upr where kod='ewus'), new.id);
update table_03 set idx=currval('table_02_id_seq'::regclass) where id=new.id;
return new;
end;
$$ language plpgsql;
create trigger insert_po_insercie
after insert on table_01
for each row
execute procedure insert_po_insercie();
INSERT INTO table_01 (id_operacji, data_czas_operacji, idp) SELECT id_operacji, data_czas_operacji, idp FROM guilty_table;
Pozdrawiam!
2011-06-21
[svn] Can't find a temporary directory: Internal error
Jeśli pojawia Ci się przy svn update komunikat w stylu:
Can't find a temporary directory: Internal error
to znaczy, że możesz mieć problem z miejscem na dysku na serwerze - radzę sprawdzić to w pierwszej kolejności (np. komendą df -h). :-)
Can't find a temporary directory: Internal error
to znaczy, że możesz mieć problem z miejscem na dysku na serwerze - radzę sprawdzić to w pierwszej kolejności (np. komendą df -h). :-)
Subskrybuj:
Posty (Atom)