Récupérer le master depuis le remote origin avec git

Posté le ven. 07 août 2015 • Tags : git

Dans certains projets j’utilise git avec plusieurs remote, par exemple :

  • un remote “origin” se trouve sur un serveur perso.
  • un remote “github” qui lui est sur github.com.

Quand je vais sur le master il m’arrive d’avoir ce message :

"your branch is up-to-date with “github/master”."

Je préfèrerai que ma branche soit à jour avec mon origin/master et non github/master.

La solution que j’ai trouvé est la suivante :

  1. supprimer ma branche master locale :

    git branch -d master
    
  2. récupèrer mon master depuis le remote origin :

    git checkout -t -b master origin/master
    

Pour info :

-t ou --track pour rattacher à l’origin/master

-b pour créer ma nouvelle branche “master”

Plus d’info avec man git-checkout ;-)


Gentoo utilisation de layman & eix

Posté le dim. 19 juillet 2015 • Tags : emerge, gentoo

Certains programmes n’étant pas en dernière version dans les dépôts gentoo l’utilisation de layman peut faciliter la vie.

Étant à la recherche de vagrant, la seule version disponible à ce jour sur gentoo est vagrant-1.4.3-r2… En allant sur le site officiel de vagrant je me rend compte que nous sommes à la version 1.7.3.

J’ai donc trouvé un overlay avec vagrant-bin version 1.7.3 : http://gpo.zugaina.org/app-emulation/vagrant-bin

Pour utiliser cette overlay nous avons besoin de layman.

Installation :

emerge -a layman

echo "source /usr/portage/local/layman/make.conf" >> /etc/make.conf

Pour afficher tous les overlays disponible :

layman -L

Ajouter l’overlay stefantalpalaru (dans lequel nous avons vagrant-bin-1.7.3) :

layman -f -a stefantalpalaru

Maintenant si on recherche dans eix “vagrant” rien n’a changé.

Il faut mettre à jour eix :

eix-update

Maintenant avec eix vagrant nous avons la ligne vagrant-bin et donc nous pouvons installer vagrant-1.7.3 via emerge.


Ma config : Clevo w650sz i7 4910MQ

Posté le sam. 18 juillet 2015 • Tags : computer, kernel, linux

Ayant vendu mon Macbook Air 13" il y a quelques mois, j'ai pris le temps de comparer les différents portables. La marque Taïwanaise "clevo" propose des machines avec ou sans OS (gain d'une centaine d'euros pour Windows).

J'ai donc commandé chez Anyware un w650sz avec un i7 4910MQ (qui a un score sur cpubenchmark plutôt remarquable).

Je l'ai commandé sans ram, sans disque dur, avec un rack pour disque dur à la place d'un graveur dvd ou autre cd, sans extension de garanti pour un peu moins de 1000€ (j'ai bénéficié d'une réduction de 5% et des frais de port gratuit). J'ai commandé mes barrettes de ram et mon mSata ailleurs, car les marques en stock ne me plaisaient pas. Note l'équipe de Anyware est bien sympa (ils ont enlevé les 2Go de ram qui m'étaient inutiles donc non facturé) Plutôt que payer 2Go de ram et ne jamais les utiliser… J'ai donc ajouté 2 barrettes de 8Go ainsi qu'un mSata de 128Go pour un peu moins de 200€.

J'ai utilisé cette machine 2 jours, pour l'instant et elle est parfaite pour mon utilisation. L'écran 1080p sur un 15" est appréciable, avec mon iiyama 27" j'ai un dualscreen en 2x1080p ce qui est mieux que ma config précédente avec un écran en 1080p et l'autre avec une résolution moindre…

Pour la compilation de chrome qui prenait 2/3h à elle seule sur mon ancien laptop, en 45mn c'était fait avec d'autres grosses applications tel que gimp ou darktable…

Pour l'instant rien a redire sur cette machine.

Voici les modules a activer dans le noyau pour le réseau et le son :

Realtek 8169 gigabit ethernet support
Build Analog Device HD-audio codec support

Comment récupérer le contenu d’un fichier d’une autre branche avec GIT ?

Posté le ven. 20 mars 2015 • Tags : git

Il suffit d’utiliser git show.

La commande :

git show branch_name:filename

Exemple :

git show reset_password:/templates/reset_password.tmpl

Initialiser des sous-modules en cascade dans git

Posté le dim. 25 janvier 2015 • Tags : git

Pour initialiser les sous-modules dans git j'utilise la commande suivante :

git submodule init

Ensuite je dois faire un update des sous-modules pour charger le contenu :

git submodule update

Pour faire les deux en même temps (init + update) vous pouvez faire :

git submodule update --init

Imaginons maintenant que vous avez des sous-modules dans d'autres sous-modules. Exemple dans mon dépot dotfiles j'ai mon dépot vim et dedans des sous-modules avec les plugins de vim. Pour initialiser, mettre à jour et le tout en cascade (dans tous les dossiers et sous-dossiers) il faut faire :

git submodule update --init --recursive

Êtes-vous à l'heure ? (Et votre serveur ?)

Posté le sam. 24 janvier 2015 • Tags : debian, ntp, date, linux

Je suis à l'heure, et mes serveurs le sont également (normalement).

Normalement oui, mais le serveur NTP que j'utilisais ne répond plus… Mes serveurs ont donc 1mn30 de retard pour l'un, et 40mn de retard pour l'autre !

J'utilisais ntpdate avec le serveur de l'université de Nice (ntp.unice.fr).

J'ai donc installé ntp grâce aux paquets debian, et maintenant mes serveurs sont à l'heure.


Recherche dans le code source avec git

Posté le lun. 08 décembre 2014 • Tags : git, code

Pour rechercher directement dans le code source une modification précise, j'utilise la commande suivante :

git log -p -S 'display'

Écriture d'un rapport de bug

Posté le sam. 08 novembre 2014 • Tags : bug, doc

Étant développeur, j'ai très souvent des rapports de bug, qui peuvent être précis, ou moins suivant la personne.

L'écriture d'un rapport de bug peut demander du temps, si on veut faire les choses correctement.

Le rapport de bug doit être écrit clairement et précisément pour que les développeurs sachent comment reproduire le bug.

Pensez à joindre un maximum d'informations : le message d'erreur, le numéro d'erreur, une copie d'écran quand c'est possible.

Ajoutez également des informations sur votre environnement de travail (version du système d'exploitation, nom et version du navigateur…).

Une fois que vous avez écrit votre rapport, relisez-le pour être sûr de vous faire comprendre et vérifiez que quelque chose ne soit pas mal interprété.

Si le rapport est bien fait le développeur ne doit pas venir vers vous avec des questions ou explications supplémentaires. Le développeur gagne donc du temps et il ne vous perturbe pas dans votre travail (donc vous en gagnez aussi).

Je vous invite également à lire cet article pour écrire un bon rapport de bug.


Faire un patch de "x" commit(s) avec git

Posté le mar. 06 mai 2014 • Tags : git, patch

Voici mon historique des commits :

c0004 -- dernier commit
c0003 -- avant dernier commit
c0002 -- second commit
c0001 -- premier commit

Je veux faire un patch du commit c0001 et c0002 je dois donc faire :

git format-patch -2 c0002 --stdout > mon.patch

le "-2" sert à récupérer 2 commits à partir du commit c0002.


Installation de Skype 64 sur Debian

Posté le ven. 21 mars 2014 • Tags : skype, debian

Télécharger la dernière version de Skype (Debian 7.0 [multiarch]).

Ajouter l'achitecture i386 si vous ne l'avez pas déjà fait. :

dpkg --add-architecture i386

Puis mettre à jour les paquets :

apt-get update
apt-get upgrade
apt-get install -f

Installer Skype en n'oubliant pas de remplacer "x" par la bonne version :

dpkg -i skype-debian_x_i386.deb