jueves, 25 de septiembre de 2014

Recuperar archivos git rm -f sin commit previo

Estaba registrando los cambios de un proyecto y por error borre un archivo con el siguiente procedimiento

Cree un archivo y lo agregué al git local
echo "Archivo nuevo sin subir" > archivoNuevo
git add archivoNuevo
Me di cuenta que no tenía que subirlo aún, entonces trate de quitarlo de mi git local
git rm -f archivoNuevo
Y me di cuenta que borre el archivo físico, no era mi intención, solo quería eliminarlo del git local.

git fsck

Cuando se agrega un archivo a git, el genera un objeto dentro de su estructura
ls .git/objects/
Para recuerar el archivo en este caso se puede utilizar git fsck Luego es navegar por los archivos o carpetas que están registradas en git a partir de los hash

Ejemplo practico

En este caso borre un Controller de Symfony2, y el procedimiento para recuperarlo fue el siguiente: Determinar un sistema de archivos
ubuntu@maquina:~/pathProyecto$ git fsck
Checking object directories: 100% (256/256), done.
Checking objects: 100% (1245/1245), done.
dangling tree c971cfaceab2bc7dee1fe3efcedfffe716eb5f2c
dangling tree ca214170eb5443c9b1b4630d036422eddb89d55b

Navegar entre las carpetas del proyecto con git cat-file muestra el contenido de la carpeta o el contenido del archivo
ubuntu@maquina:~/pathProyecto$ git cat-file -p c971cfaceab2bc7dee1fe3efcedfffe716eb5f2c
100644 blob 90e794c25dcbf24e1c44aba5c0815ef377f0f46e	.gitignore
100644 blob 88a57f8d8da49126c6f7d225d567ad216ace4d83	LICENSE
100644 blob 52c53293dc53ce6321fcd9f4f29779c55165f5ac 	Makefile
100644 blob 7e6f7a622ca9bedf5247e44d3ba166d5a7b65cdc	README.md
100644 blob cad9eeb6320d7d3e3f83492531875c5862391fcd	UPGRADE-2.2.md
100644 blob 504367f2346169e9b4108ac49880c8b009ff96e4	UPGRADE.md
040000 tree 7d121dafbe91256920c0dad3934b03bd77fa11d7  	app
100644 blob 195b186617c9f85af388028a9345153cdce6e6e5	composer.json
100644 blob ae5d37d3e188354d7d4f2b2ff8abf90c8f744abf	index.html
040000 tree d437a977cbaf21a38c2f7e7852bf9f2a1c72d18d	src
040000 tree 533c5122c9dd123d49a685509bfa8953f227c13f    web

ubuntu@maquina:~/pathProyecto$ git cat-file -p d437a977cbaf21a38c2f7e7852bf9f2a1c72d18d
100644 blob 3418e55a68383c1cbc687c52a2994d1e8ed83800	.htaccess
040000 tree f9eec4300591f0193c08a80662b2d1ce907457d2	IDE
040000 tree 0e639844fbee1c0fbe51c1fc20ce1e60d3a7642f	Empresa

ubuntu@maquina:~/pathProyecto$ git cat-file -p 0e639844fbee1c0fbe51c1fc20ce1e60d3a7642f
040000 tree f4b8f9b61516241312f26ab72e92433405063394	ProyectoBundle

ubuntu@maquina:~/pathProyecto$ git cat-file -p f4b8f9b61516241312f26ab72e92433405063394
040000 tree 7c5bb7ca3cd6db5806d3abf454990fd4fe238d37	Controller
040000 tree 5a215c7a5d3e98eaf635c3985c2bfa909e421987	DependencyInjection
040000 tree 13c50e99889ad2e98dfecb42473ee94bb5659a80	Entity
040000 tree cf8daca122047c54cc5da66b2e14d4f2af08472d	Form
040000 tree e7424114972a6861d589b6b6a9b70684d7a89dbf	Librerias
040000 tree 711abb90703eaef547cb0105d098fc34d4731fd7	Resources
040000 tree 080eb9df077fce893369b9a8845d194e12dd9728	Tests
100644 blob b4a35ce62448fa5d5ee1c50cca9e4ef9973e17a6	EmpresaProyectoBundle.php
040000 tree d3d6cd59cc5ece22f39109913de65e030d736043	Twig

ubuntu@maquina:~/pathProyecto$ git cat-file -p 7c5bb7ca3cd6db5806d3abf454990fd4fe238d37
100644 blob 70260f4e9e5235d9a8f820519a078cf4f5656130	DefaultController.php
100644 blob 46b8e004efbff07e5b05be91672702395a37a967	PerdidoController.php
Cuando por llegué a la carpeta donde debería estar hago de nuevo cat-file sobre el hash correspondiente:
ubuntu@maquina:~/pathProyecto$ git cat-file -p 46b8e004efbff07e5b05be91672702395a37a967
<?php

namespace Empresa\ProyectoBundle\Controller;

use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Session\Session;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;



/**
 * Perdido Controller.
 *
 * @Route("/Perdido")
 */
class PerdidoController extends Controller
......


y listo :D archivo recuperado

jueves, 5 de diciembre de 2013

PHP Beautifier

php_beautifier
    --indent_tabs
    -l
        "
            IndentStyles(style=k&r)
            ArrayNested()
            ListClassFunction()
            NewLines(
                before=
                    public:
                    private:
                    protected:
                    if:
                    switch:
                    foreach:
                    else:
                    T_CLASS:
                    T_COMMENT,
                after=
                    T_COMMENT:
                    function
            )
        "

lunes, 13 de mayo de 2013

Consumismo, conocimiento y costo real

Cuando uno esta comprando en un supermercado por ley ellos tienen que mostrar una comparación de precios por unidad de medida. Este me parece un factor muy importante en el momento de realizar compras. Con esta información el consumidor puede tener una comparativa entre productos de similar calidad, aunque vengan en diferentes cantidades, y tomar una decisión más racional sobre la compra.

Ahora bien, la gente sabe hacer estas comparaciones? Les interesa?

Sería bueno poder tener más información sobre los productos, en especial con el tema de costos reales, yo soñaría con 2 datos extras:
  • Costo real de producción del bien o servicio: incluyendo el costo de fabricación real, incluyendo medio ambiente, derechos sociales y demás.
  • Costo real de procesamiento de los desperdicios generados: incluyendo los de las fabricas, cultivos, hasta los costos de procesamiento de los materiales posteriores a la utilización del bien o servicio. Reciclaje, procesamiento de recursos orgánicos y disposición final.

lunes, 29 de octubre de 2012

Leo en ubuntu 12.10

Después de buscar por muchos lados documentación para poder instalar Leo Programer Editor lo descargue y para correrlo tenía este error:

Leo requires Qt to be installed.



Para solucionar esto:

sudo apt-get install python3-pyqt4


Y correrlo con python3, hice un archivo en bash y lo coloqué en el path


usuario@maqunia:~$ cat Leo
#!/bin/bash
python3 /opt/Leo/launchLeo.py

miércoles, 22 de agosto de 2012

Google drive php

Después de mucho pelear tengo el código para que funcione el api de google drive con php, esta basado en http://hublog.hubmed.org/archives/001954.html , en primera instancia intente leer la info de: https://developers.google.com/drive/examples/php pero me fue un poco confusa.

Ya implementaré otra versión.


.

lunes, 6 de diciembre de 2010

Wikileaks en Zoociedad.org

No nos dejan colocar el mirror :(

____________________________________________________________________

Hello,

On Mon, 06 Dec 2010, you wrote:

> Hi, we like have a Wikileaks mirror, for example in wikileaks.zoociedad.org
>
> will I have problem if configure this in my account?
>
> thanks
>

Mirrors, no matter the content, are not appropriate for our for shared
web hosting . Running a mirror is in violation of our unlimited policy
(http://panel.dreamhost.com/unlimited.html):
Here are some specific examples of things not allowed:

* Copyrighted content you are not the copyright holder of.
* File upload / sharing / archive / backup / mirroring / distribution
sites.
* A site created primarily to drive traffic to another site.
* Making your account resources available (whether for free or pay)
to the general public.



Glen,

--
- DreamHost Abuse/Security Team
- Terms of Service: http://www.dreamhost.com/tos.html
- Anti-Spam Policy: http://www.dreamhost.com/spam.html
- Abuse Center: http://abuse.dreamhost.com/

viernes, 30 de julio de 2010

Mongo in Dreamhost (basic)

Se si puo' compilare PHP5, perche' non si dovrebbe poter utilizzare MongoDB?
Fu questa la domanda con la quale inizia il processo per intallare Mongo in Dreamhost in un account normale.

La documentezione ufficiale e' la seguente:

http://wiki.dreamhost.com/index.php/Installing_PHP5

ma e' parecchio noiosa, per cui la gente ha realizzato suoi propri scripts peer effettuare unn'installazione piu' rapida e facile:

http://www.ercoppa.org/blog-PHP-53--Xdebug--APC-install-script-per-Dreamhost.htm


Di conseguenza, basandomi su tale script e vedendo la documantazione di mongo, tento di installarlo con:

pecl install mongo

ma non era disponibile o non avevo i permessi.


- Installazione.

Quindi realizzo la seguente:

git clone git://github.com/mongodb/mongo-php-driver.git

git clone git://github.com/mongodb/mongo-php-driver.git
cd mongo-php-driver
./configure --with-php-config=/home/usuario/path/instalacion/bin/php-config
make
make install


dopo di che correggo un paio di collegamenti simbolici:

#EXTENSION_DIR = /home/usuario/path/instalacion/lib/php/extensions/no-debug-non-zts-20090626
ln -s /home/usuario/path/instalacion/lib/php/extensions/no-debug-non-zts-20090626 /home/usuario/path/instalacion/extensions


e configuro php.ini.

Per mettere in esecuzione il servizio: (e' possibile metterlo in un cron in modo simile)

cd /home/usuario/path/instalacion/mongostatic/mongodb-linux-x86_64-static-1.X.X
bin/mongod --dbpath data/db/

Per informazioni sul demone:

http://direccionweb.com:28017

Il resto e' solo esecuzione:
http://www.php.net/manual/en/mongo.tutorial.php

NOTA.
ATTENZIONE. Si deve vedere cosa accade con le condizioni di uso che dicono che non si possano mettere demoni in esecuzione: avviarlo su richiesta?

http://www.dreamhost.com/tos.html

"Any application that listens for inbound network connections (even if the application would otherwise be allowed) are not permitted"


Originale Traduzione:
http://www.ercoppa.org/blog-PHP-53--Xdebug--APC-install-script-per-Dreamhost.htm#2

miércoles, 21 de julio de 2010

MongoDB en Dreamhost (basic)

¿Si se puede compilar PHP5 por que no se puede utilizar MongoDB?
Esa fue la pregunta con la que inicie el proceso para instarlar Mongo en Dreamhost en una cuenta normal

La documentación oficial es esta:
http://wiki.dreamhost.com/index.php/Installing_PHP5

Pero es muy aburrida, tonces la gente ha hecho sus propios scrits para instalar mas rapido y facil:
http://www.ercoppa.org/blog-PHP-53--Xdebug--APC-install-script-per-Dreamhost.htm


tonces basandome en este script y viendo la documentación del mongo, intente instalarlo con:
pecl install mongo

pero no estaba disponble o no tenia permisos para instalar

Instalacion

entonces realice lo siguiente:
git clone git://github.com/mongodb/mongo-php-driver.git
git clone git://github.com/mongodb/mongo-php-driver.git
cd mongo-php-driver
./configure --with-php-config=/home/usuario/path/instalacion/bin/php-config
make
make install
despues de esto ajuste un par de links simbolicos en

#EXTENSION_DIR = /home/usuario/path/instalacion/lib/php/extensions/no-debug-non-zts-20090626
ln -s /home/usuario/path/instalacion/lib/php/extensions/no-debug-non-zts-20090626 /home/usuario/path/instalacion/extensions

y configurar el php.ini,

Para ejecutar el servicio: (esto se puede colocar en un cron algo así)

cd /home/usuario/path/instalacion/mongostatic/mongodb-linux-x86_64-static-1.X.X
bin/mongod --dbpath data/db/


Para ver la información del demonio:
http://direccionweb.com:28017/

y despues es solo jugar:
http://www.php.net/manual/en/mongo.tutorial.php





NOTA


OJO, toca ver que se hace con las condiciones de uso que dicen que no se pueden poner demonios a correr, ¿arrancarlo a demanda?

http://www.dreamhost.com/tos.html

"Any application that listens for inbound network connections (even if the application would otherwise be allowed) are not permitted"

sábado, 22 de mayo de 2010

Prueba de ScribeFire

Esta es una prueba simple para generar post con el plugin scribefire sobre mozilla firefox http://www.scribefire.com/

viernes, 25 de septiembre de 2009

Inicio de desarrollo de OANLiner

Actualmente estamos trabajando en una herramienta para remplazar Liner cualquier persona interesada la info esta en:
OANLiner

jueves, 27 de agosto de 2009

Manos Arias


Quisiera poder ver las manos de Arias, para corroborar esta foto


si como no
http://www.elespectador.com/noticias/politica/articulo158214-del-blackberry-fue-de-buena-fe-y-mamando-gallo-andres-felipe-arias

miércoles, 22 de julio de 2009

Guerra navegadores en la antártica

Tras una hegemonía bastante fuerte el ultimo año de firefox en las estadísticas de navegación en la antártica

ultimo año

el ultimo mes ha estado muy interesante con incursiones de ie, opera y safari

ultimo mes


Mas sin embargo creo que esto es temporal aunque no deja de ser interesante.

viernes, 22 de mayo de 2009

Bloqueo paginas :S

Veo con mucha tristeza que se esta imponiendo un bloqueo mal hecho a ciertas paginas desde Colombia

En este caso tengo "servicio" de internet con Telefonica Telecom Colombia, y veo el servidor de imageshack.us bloqueado



domingo, 10 de mayo de 2009

Configuración Mirror Ubuntu - Universidad Nacional

Seleccionar Orígenes del Software


Sistema -> Administración -> Orígenes del Software
Imagen:1-SeleccionarOrigenesDelSoftware.png




Seleccionamos en "Descargar desde:" la opción "Otro ..."


Software de Ubuntu -> Descargar desde: -> Otro ...
Imagen:2-SeleccionamosEnDescargarDesdeLaOpcionOtros.png



Seleccionar en Colombia "matematicas.unal.edu.co" en la Lista


Imagen:3-SeleccionarMatematicasEnLaLista.png



Cerramos Y Aceptamos Recargar Repositorios


Es importante dar click en la opción "Recargar"
Imagen:4-CerramosYAceptamosRecargarRepositorios.png

viernes, 24 de abril de 2009

Entidad Relación phpMyAdmin

Con mucho agrado veo un soporte inicial, no he podido analizarlo completo, de el diagrama entidad relación en phpMyAdmin

martes, 14 de abril de 2009

sábado, 4 de abril de 2009

Situación actual del país

http://www.eltiempo.com/opinion/columnistas/lenvalencia/el-ambiente-en-washington-frente-a-colombia_4949080-1

El problema principal que veo con esto es que los recursos dispuestos por USA para el Plan Colombia y demás "ayudas" que puedan dar, han sido dedicadas principalmente a intereses particulares ya sean venganzas personales o intereses empresariales encubiertos con la frase "lucha contra el terrorismo".


Respuesta del común:
"Pero es que este gobierno esta acabando con las farrr."

sábado, 14 de marzo de 2009