Nathan Manceaux-Panot - Retcon - Rewriting Git History made Simple
Durée: 53m25s
Date de sortie: 30/09/2024
This week we have Nathan Manceaux-Panot, the creator of Retcon, a git client. Retcon is a git client that helps you rewrite git history with remarkable ease. You can drag and drop commits to create new commits, undo, redo, and more.
- https://cykele.ro/
- https://mas.to/@Cykelero
- https://github.com/Cykelero
- https://indieapps.space/@Retcon
- https://retcon.app/
Episode sponsored By MUX (https://mux.com)
Become a paid subscriber our patreon, spotify, or apple podcasts for the full episode.
la première chose à faire sur Redcom, c'est pour les gens qui écrivent la history,
souvent, ou qui ne l'écrivent pas, parce qu'ils pensent que c'est trop slow,
ça vous permet d'en faire instantanément.
Oui, comme vite que ça pourrait probablement être en termes d'interaction.
Bonjour, bienvenue à la DevTools FM podcast.
C'est un podcast sur les défis de développer les tools et les gens qui les réalisent.
Je suis Andrew et je suis ma co-host Justin.
Bonjour, tout le monde.
Nous sommes heureux d'avoir Nathan Mansopano.
J'espère que je vais avoir votre dernier nom correct.
Vous êtes donc en train de travailler sur ce tool, appelé Redcom.
C'est un tool pour aider, réécrire et réécrire la history.
Pour probablement tout le monde qui l'a écouté,
ou probablement, qui l'utilise sur un basis quotidien.
Je suis vraiment heureux de voir ce que vous faites
et de parler de pourquoi vous avez fait tout ça.
Mais avant de le faire,
vous voulez dire à nos listeners plus tard?
Bien sûr.
Je suis un développeur depuis longtemps.
Mais le truc est que je suis en développement de Frontend.
C'est pour ça que j'ai fait ma carrière.
C'est pourquoi j'ai fallu être une équipe.
C'est pour ça que j'ai fait ma carrière.
Mais quelques années plus tard,
j'ai fait mon travail et j'ai eu un moment
et je pensais que je vais essayer de travailler sur ce projet.
C'est un projet de site.
J'ai eu l'idée d'avoir un peu de notes,
un peu de drawings de interface,
des notes de boutiques.
Et aujourd'hui, je vais essayer de travailler sur ça.
Et c'est comme ça que j'ai commencé à travailler sur Redcom,
c'est une app MacOS.
Ce n'est pas du tout à faire avec le développeur Frontend.
C'est-ce que vous allez le premier à faire en développement de Mac?
Je l'ai remarqué que c'est une app Swift
ou, au moins, Swift or Objective-C.
Oui, donc Swift, absolument, et app Kids.
Donc Apple, un framework UI,
mais je pense que c'est encore la bonne chose aujourd'hui
pour certaines apps Mac, comme Redcom.
Et oui, c'était mon premier app Mac,
ce qui est fun de dire, parce que quand vous avez la première app
dans quelque chose, c'est un client.
C'est une choisi terrible.
C'est un start-up.
Mais ici on est.
Mais avant ça, j'ai eu des...
Ils étaient quelques mois sur les iOS,
comme la formation de l'IOS.
Stanford University a des courses en vidéo,
comme sur YouTube, je pense.
Mais Paul Hegerty, ils sont excellents.
Si quelqu'un veut apprendre l'IOS, ils sont vraiment bons.
Le tutoriel est vraiment bon.
C'est comme ça qu'on apprend.
iOS Development, et beaucoup de ce qui se passe au développement de Mac.
Tu as dit de construire des clients de GIT,
pourquoi est-ce que c'est difficile?
Sur la surface, je ne sais pas.
Sur la surface, c'est comme...
C'est un peu de commissaire,
et ils ont des changements de codes.
Évidemment, je n'ai pas été éteint de scratch.
Je suis en train d'utiliser un framework,
le GIT 2,
qui vous donne tous les bases.
Les bases, si vous vous intervient massivement,
vous vous donnez des commissaires et des branches d'exploration.
Et si vous pouvez faire des bases,
comme...
Toutes les fonctions, les fonctions de GIT sont là.
Si vous voulez faire des clients de GIT,
comme un client général, un client régulier,
la partie difficile serait l'UI.
Il serait vraiment comme...
Oui, comment j'ai déployé ce truc?
C'est un peu de problème,
parce que même juste de déployer l'information en GIT,
c'est vraiment complexe,
juste de déployer un GIT,
si vous faites ça très simplistically,
vous ne verrez pas,
mais si vous voulez interagir,
les utilisateurs, c'est très compliqué.
Donc, la première partie difficile de la cliente de Billing-Eau
est l'UI.
Il y a beaucoup de surface,
beaucoup de choses à voir,
et il y a beaucoup de concepts en GIT.
C'est difficile, c'est juste une liste de commissaires,
mais il y a des branches différentes.
Les branches, elles peuvent avoir des tags.
Quand vous créez une branche,
il y a des millions de choses qui peuvent arriver,
pas des millions de choses,
mais vous pouvez créer la branche ici
sur un different commit.
Et peut-être que vous essayez de utiliser le nom
comme invalidation,
ou c'est un nom valid,
mais c'est le nom de l'article déjà existant.
Donc, tout ça, quand vous bâlez l'UI,
vous allez vouloir prendre un code
comme un pilon de complexité,
mais comme complexité,
par le bret, je dirais,
pour un client régulier,
la complexité, je pense, n'est pas dans la défaite,
vous n'avez pas de quoi faire,
c'est très compliqué,
mais vous devez faire beaucoup de ça
pour avoir quelque chose basé.
Et pour ça,
quand vous ne vous essayez de défiler l'information,
un client GIT qui suivit les conventions de GIT,
mais si vous voulez aller plus loin,
faire quelque chose comme Redcon,
qui est très grave,
avec ce que ça fait,
avec le repo,
vous devez avoir une complexité.
Et je pense qu'on peut parler de ça plus tard,
mais c'est juste que vous allez avoir des défis,
des recommandations, des ordres,
et tout peut arriver à ce point.
Donc peut-être que nous allons en parler un peu
de Redcon,
donc comment ça diffère
d'un app GIT typique ?
Oui,
donc le refus de Redcon est très différent.
Initiellement,
je pensais que ça ne serait pas possible
de faire toutes les fonctions basées
de un client GIT.
pour donner un exemple,
je pense que
quand j'ai ajouté le pool de la application,
de remotes,
et Redcon,
il y avait eu une existence
pour plus de deux ans,
et créer des recommandations,
comme les recommandations,
qui étaient élevées après
à moins de 9 mois,
je pense que 12 mois,
plus de quelque chose.
Donc ça vous donne une idée,
Redcon fosque sur les autres choses.
Et maintenant,
ça a des features basées,
les branches de management,
etc.,
pour le plus grand,
mais
le très court de Redcon,
ce qui fait que c'est valable et unique,
c'est l'objet de réécrire la histoire,
mais pour réécrire la histoire,
plus vite,
dans un très différent de façon.
Donc,
c'est sur des bases interactives,
donc je vais les décrire rapidement,
pour quelqu'un qui n'est pas
si familier avec eux.
Donc,
le plus typique de Redcon
c'est que vous faites du travail
et vous commettez.
Donc, vous avez invité,
vous commettez,
vous avez des messages
et vos changements sont encapsulés
dans le jeu.
Donc vous devrez commettre
après commettre.
En quelques équipes,
vous allez avoir une histoire de réécrire
de temps en temps.
Donc,
vous allez dire,
Hey,
je suis le commis,
c'est appelé Fixbug
et un autre commis
qui s'appelle Add Feature
et ce n'est pas très bon,
c'est pas très clair.
Donc peut-être que je vais
renommer ce commis
ou réorder lesquels,
ou peut-être même
les commises merged
ensemble,
fixer ou les écrire.
Donc, c'est la histoire de réécrire,
prendre votre liste de commises
et réarranger
dans un moyen
qui fait plus de sens.
C'est super utile
parce que vous pouvez
parce que,
c'est super utile
pour beaucoup de raisons.
C'est un acte de communication.
C'est un acte de communication.
Les commises toujours
ont des changements de co-changes,
mais pas toujours
les intents.
Et avoir une histoire de réélimination,
bien réordir
avec des messages de réélimination,
ça vous dit pourquoi
vous avez fait des changements
qui récappent
le contexte autour de eux.
Ce qui est utile
pour si vous avez des amis
qui réveillent votre PR,
ils peuvent faire
beaucoup plus vite
et bien,
ils savent ce qu'il y a.
Et votre histoire
peut juste les dire.
Et c'est utile pour vous
dans le futur
quand vous revenez
aux ces commises
et essayez de comprendre
ce qu'il y a de la pensée.
Pourquoi est-ce
cette classe ?
Pourquoi n'est-ce pas
ce qu'on a?
Pourquoi est-ce que
cette complexité ?
C'est la question
qu'on peut répondre
à une histoire de réélimination.
So, Redconn est
focussed sur ça.
Et le moyen
que vous dîtes
un réélimin interactif
est
en utilisant le terminal,
vous dîtes
un réélimin interactif
d'un point d'oeil.
Et le moyen
qu'il y a de la pensée
est
que vous initiiez
le réélimin.
Il vous donne
un liste.
Il vous donne
un liste de commises
comme le state
qu'on est en
et vous modifiez
ce liste.
Vous réordez les lines,
parce que c'est juste un texte
que vous faites quand vous voulez.
Vous réordez les lines.
Vous pouvez ajouter un
marqueur spécial
au début des lines
pour dire que vous voulez
réactiver
ce commis
pour s'exprimer
avec un
commis
par exemple.
Vous faites
un liste de 2D
et
quand vous fermez
ce
ce
qui s'occupe
d'une base
qui t'appuie
de 2D.
Ça peut arriver
ou vous vous mettez
un conflit.
C'est un bon exposition.
Vous vous mettez un conflit.
Si vous vous déligez
un conflit et
il change des lines,
un autre
change les mêmes lines,
le kit ne sait pas
ce qu'il fait.
Il pose un conflit.
Et peut-être
vous vous réagissez
des conflits en gros.
Et quand ça s'est fait,
la base est appuyée.
C'est le basic de la base.
Vous pouvez faire ça
en terminal.
Des clients
qui vous permettent
de faire
en même temps,
mais c'est
le même workflow.
Vous faites
un liste de 2D
et vous réagissez
des conflits
de 1x1.
Et vous faites
2D
Il y a un message qui est en train de changer.
Si on veut changer, on va au liste.
En l'un de l'autre, on voit toujours le liste de commits.
On choisit un commit.
Et où on voit un message, on le type.
C'est ça.
On n'a pas de confirmation.
Comme vous vous concentrez sur le field, ça le fait.
Il n'y a pas de step 2.
Il y a barely a step 1.
Vous trouvez le commit, changez le message et il change.
Rénéminer un file dans le file explorer.
Ou pour un exemple plus complexe.
Vous voulez juste réorder des choses.
Vous avez le liste des commits et vous cliquez et vous déclarez.
Vous mobilizez le commit de l'autre,
d'où vous voulez être.
C'est ça.
C'est ce que j'ai connu.
On s'est dit que j'étais confus pour un while,
mais je l'avais regardé pour step 2.
Ils allaient voir ce qu'ils allaient faire après les commits.
Ils étaient confus, c'est ce que nous attendons.
Mais non, dans Redcom, il n'y a pas de seconde étape, parce qu'il n'y a pas de mode.
Vous n'avez pas un to-list, d'une application de choses,
non, c'est toujours la même chose.
Vous êtes toujours dans l'éducation mode.
Et donc c'est la primaire chose de Redcom,
c'est pour les gens qui écrivent la history,
souvent, ou qui ne l'écrivent pas,
parce qu'ils pensent que c'est trop slow,
ça vous permet d'en faire instantanément.
Oui, comme vite que ça pourrait probablement être en termes d'interaction.
Nous aimerons arrêter et remercier notre sponsor pour la semaine, Mux.
Si vous avez toujours essayé de mettre un vidéo sur votre produit,
vous savez que c'est plein de pips.
Si c'est host, stream, ou même construire un joueur snazzy,
il y a beaucoup de choses que vous devez avoir à faire pour délire une bonne expérience.
C'est là où Mux vient.
Mux offre un set de tools de fin à fin qui vous permettent de faire un vidéo à production
plus vite que vous avez pu avoir.
Le feature que j'aimerais vous déclencher cette semaine est l'automatique de la feature de la charge.
Avec le vidéo, la coste la plus opérationnelle est hostée à tous ces vidéos.
Il peut être beaucoup.
Avec la feature de la charge automatique de Mux,
ça fait que c'est plus cher.
Pour chaque vidéo que votre plateforme a,
il traite si ou non, ce qui est streamé.
Si ça n'est pas streamé dans un certain nombre de temps,
il s'agit d'une charge plus grande et plus grande pour vous.
C'est assez cool.
C'est juste un nombre d'autres choses qui font un vidéo sur Mux,
un bris.
Si vous voulez apprendre plus de Mux,
allez au Mux.com pour les regarder.
Pour accomplir tout ça,
vous êtes-vous en train de stacher et de mettre des choses en arrière?
Pour abstracter des choses?
Ou comment ça marche?
C'est... oui.
Il y a beaucoup de stachés, de réappli, de rébaser des choses en arrière.
Pour abstracter des choses.
C'est une bonne description de ce qui se passe.
Il y a des layers de lait.
Mais à l'intérieur,
il y a l'idée que
si vous faites un place,
en plus, vous allez se faire de l'esprit.
Dans l'exemple,
vous vous mettez un commissaire à un nouveau place
et ça s'applique instantanément.
Ça ressemble bien,
et je me suis dit que je vais juste le faire.
Mais vous allez vite découvrir que ça peut causer un conflit.
Bien sûr, mais pourquoi vous faites ça?
Parce que quand vous faites des choses,
quand vous avez un conflit,
dans un régulier,
vous n'avez pas de quoi faire.
Vous devez résolver le point.
Mais pour le raconteux,
ce n'est pas le cas.
Si vous êtes stuck,
il y a beaucoup de choses que vous ne pouvez pas faire.
Vous vous mettez le premier commissaire et vous vous pliez.
Mais je veux faire plus de mouvements.
Mais dans les listes de 2D,
dans les listes de 2D,
vous pouvez faire tout ce que vous voulez.
Et puis vous vous pliez.
Vous devez faire plusieurs mouvements.
Dans les réconnues, vous n'avez pas de luxuries de dire
que vous allez voir plus tard.
Pas dans ce manière technique.
Le plus important de Redcon
c'est que ça vous permet de faire des changements
quand vous avez un conflit.
Quand c'est pausé,
je dis que ça se passe.
Vous vous pliez un commissaire,
parce que c'est un conflit,
et vous vous pliez un autre commissaire,
peut-être que vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
et vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
Vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
Vous vous le délirez,
vous vous le délirez,
Vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
vous vous le délirez,
c'est incroyablement intuitif,
il y a un charbon sur ma website,
comment vous le faites ?
et pour toutes les choses,
c'est comme le z,
tout le monde le fait,
vous savez déjà comment on le fait,
c'est un trend,
la faute de ça,
c'est que ça a la même limitation,
si vous le changez,
vous ne pouvez pas le redouer,
vous avez créé un point de vue,
et c'est quelque chose
que je pense que je ne le change pas,
mais je ne sais pas comment,
en termes de design,
c'est la chose de la pousse de branch,
si vous le poussez,
vous pouvez le redouer très facilement,
c'est super bien,
il y a beaucoup de temps de travail,
mais vous pouvez seulement redouer ça,
vous pouvez pas redouer un change local,
comme réorder et de commettre,
d'abord vous devez redouer le branch,
parce que ça arrive dans ce ordre,
dans le stack de la pousse,
et ça fait le sens,
le stack de la pousse, c'est le moyen de le redouer,
et ça fait que ça a été tweeté,
mais aussi c'est en temps limité,
vous devez dire que vous voulez redouer le change,
mais pas le pousse,
oui, j'ai eu cette situation l'autre jour,
et ça plait un netlify,
je utilise un netlify,
donc il y a eu des changements que je fais,
et je l'ai redouté,
et je devais redouer le pousse,
si je ne l'ai pas redouté,
plus ou plus, minus.
Oui, la histoire de l'Undo
est assez difficile,
en général,
parce qu'il y a beaucoup de stratégies,
vous pouvez avoir un stack de l'Undo,
ou vous pouvez avoir un model d'Undo,
où vous avez des forcs,
et ne pas être confus avec
les forcés de brachement.
Tout ça fait sens,
je l'ai lu dans la page de l'application,
et l'une des lines que vous avez écrit
que j'aime, c'est que
vous n'avez pas besoin de la cheats,
vous n'avez pas besoin de...
Juste en parlant de l'Undo,
c'est comme, vous avez fait un truc,
commandez, vous êtes en train de le faire.
C'est énorme,
c'est massive.
Je pense que parfois,
on en a beaucoup de tools que nous utilisons,
on a un peu de
stockholm syndrome,
on vient
de l'amour de la chose,
mais c'est peut-être pas toujours,
on a eu beaucoup de paix.
Donc,
depuis votre
expérience d'expertise,
et de la dégâter
à l'interne
ou à la surface
de la surface programmatique
qui s'est offert,
quels sont les choses que vous souhaitez
que vous aurez un peu différente,
que ça vous rend plus facile,
et ou d'autres personnes,
plus facilement,
si vous pouvez faire un changement pour vous aujourd'hui,
vous allez dire, ok, si j'ai fait ça,
ça serait plus facile.
Qu'est-ce que ça serait,
et pourquoi vous voulez le faire ?
C'est une bonne question, je ne sais pas
que vous le répondez.
Je pense,
parce que le kit est assez fort,
le model est assez solide.
Vous savez,
je vais évader
cette question et aller un peu
au côté de la décision,
quelque chose dans le kit, qui m'a fait ma vie très bien,
c'est la terminologie.
C'est tellement malade,
tellement malade.
Et il n'est pas malade que les gens qui sont venus avec ça,
c'est très difficile de venir avec une bonne terminologie,
et quand vous faites ça,
dans 5, 10 ans,
comment la terminologie de la cour,
ça va se passer.
Et comme ça,
il n'est pas malade, je l'apprécie beaucoup,
mais les choses, ok, le stage,
c'est aussi appelé le index,
et aussi appelé le cache.
Et tous ces 3 mots,
ils sont synonymes,
mais aussi, il y a des noms et d'autres noms.
Un index est un type de structure data,
en fait,
et le cache
est juste utilisé un index
comme une structure data, et
c'est un masque.
Donc, oui, le nom est en kit.
Et quand je fais des choses plus difficiles,
c'est que pour Redcon,
j'ai dû venir avec une nouvelle terminologie,
pour des choses,
et ça me fait penser,
oh, tu es pausé dans le passé,
beaucoup de mots,
des nouvelles, qui ont besoin d'utiliser.
Et je serais
toujours
en plein état,
en utilisant
des mots de githes familiaires,
en utilisant
des mots plus descriptifs,
potentially les meilleures,
et c'est une grande
dichotomie, au coeur de Redcon,
c'est que
il t'envoie des utilisateurs et
des beginners.
J'ai construit ça pour moi-même,
je sais que les relaises sont interactives,
je sais comment faire ça, je suis confortable
avec eux, mais ils l'ont construit
parce qu'ils voulaient aller plus vite.
Donc, en ce moment, c'est un peu
au-delà de ce que les gens
ont expéré,
c'est pas un goût
pour faire ça plus facile, mais c'est pas
que powerful, mais c'est super facile.
Et en même temps, c'est un goût
et j'ai essayé
mon meilleur pour faire ça
super proche, parce que
c'est possible, c'est un potentiel
donc j'ai travaillé très bien pour le faire
plus facilement. Je pense que c'est
le travail qui fait ça.
Et donc, ce que ça veut dire en pratique, c'est que
pour chaque piece de texte en Redcon
j'ai toujours pensé, ok,
je peux venir avec un
meilleur mot pour ça, pour sûr.
Ils vont mieux décrire
ce que le truc est. Mais si je fais ça,
les gens qui le savent,
ils n'ont pas d'idée de ce que c'est.
Et ils vont assumer que c'est un tout nouveau
chose, parce que c'est tout nouveau mot, donc
il faut que ça soit un autre chose.
Et c'était un truc comme ça, pour les fixups
vous pouvez fixup en Redcon,
qui est comme un scratch, mais vous ne gardez pas le message.
Donc, les gens savent le scratch par name,
mais fixup est la chose que vous
souvent voulez faire, parce que
si vous avez un temps pour le recommand,
vous ne vous inquiétez pas de cette message.
Et non de ces mots
sont descriptifs. Je veux dire, les questions sont peut-être
ok, mais ce n'est pas le cas en Redcon.
Donc, ils vont être en train de fixup.
Personne ne sait ce que fixup veut dire.
Donc, c'est comme, on se dit que le merge est
quelque chose, il veut dire quelque chose.
On se dit que le flatten, c'est bizarre,
c'est le cas pour moi, c'est un flatten,
et comme, oui, c'est ça.
Il y a beaucoup d'intérêts et maintenant c'est fixup.
Parce que je suis comme, ok, si je n'ai pas trouvé un grand mot,
on peut aussi utiliser un que
certains gens savent déjà.
Et la même chose pour,
c'était un grand challenge,
de la dédiculture des recommandations.
Donc, en Redcon, on peut dédiculer les recommandations.
Vous pouvez faire un reset de la tête
ou un reset de la tête.
Donc, on peut dédiculer les recommandations
et discuter les changements,
ou juste dédiculer les recommandations,
mais de la même manière, et ça ne fait pas
si longtemps que vous avez trouvé le bon termin de la terminologie.
Comme les noms de menu.
En Indien, je suis en train de faire
quelque chose très descriptif, comme dédiculer les recommandations.
Et le autre est dédiculer les recommandations
et discuter les changements,
ou discuter les changements.
Vous voyez les recommandations
par l'un à l'autre et vous pouvez comprendre
ce qu'ils disent de cette manière.
Mais ça a pris un temps de temps
parce que, oui, dédiculer les recommandations,
dédiculer les changements, dédiculer les recommandations
et les changements, seulement dédiculer les recommandations.
C'est comme, seulement,
ce que vous voulez dire seulement.
Oui, c'est un
je pense que l'un des plus difficiles
de la construction de la clientèle
était de trouver la bonne terminologie
qui respecterait l'une
mais aussi, qui pourrait s'extender
et être très concise
et plus confusé
avec le truc.
Quand je l'ai appris
à apprendre les origines,
que ce n'est pas ce que nous savons
comme un système de contrôle version
et c'est un peu comme un truc de base
et ce que nous avons aujourd'hui
a émergé de ça.
Donc, beaucoup de complexité
qui sont dans lesquelles, pour sûr.
Donc, retourner au RETCON
un petit peu.
Pour moi, c'est comme,
vous êtes en train de faire des challenges UX
et de faire des choses
que vous voulez fixer,
d'ailleurs, en réévaluant la histoire, commande Z,
il y a-t-il d'autres choses que vous voulez fixer avec Git
que vous pensez avoir moins que les UX stélérés?
Ah, bonne question, encore.
Je suis plus profond que je l'ai été profond
déjà, mais oui, il y a des choses bazoines.
Le model corgis est vraiment
bien, comme les concepts,
c'est vraiment bien fait.
Mais oui, il y a beaucoup de changements.
Mais il y a un truc,
c'est un truc qui change dans RETCON
et
je n'ai pas eu beaucoup de feedback
sur ça, je dois demander
pour les gens.
Il a dû faire avec le stage,
les choses de stage,
donc,
en général,
les clients, quand vous voulez
créer un nouveau commit, vous allez faire
des choses de stage. Vous avez fait des changements,
vous êtes en train de travailler, c'est dure,
il y a un changement de commit.
Et vous allez stagez des des.
Oh, ce file et cet file, je veux que
cela soit contenu pour le commit, mais ce troisième
ne compte pas.
Vous stagez juste ce que vous voulez.
C'est à la file et aussi à la file de ligne.
Les manières qui sont dédiées
dans les meilleurs Git-gooies,
et je pense que le Git-Clee
vous funnel aussi dans
cette représentation, c'est que
vous avez des changements incommittés
séparés
de vos changements incommittés
qui sont stages.
Ces deux sont deux différents boxages.
Vous avez WordDeer et Stage,
généralement, ces deux choses.
Et maintenant, je sais pourquoi,
parce que, pour un long temps,
je me suis demandé pourquoi ils se séparent.
Parce que le truc intuit,
pour moi, c'est
d'avoir un seul visage.
Il y a tous vos changements,
des changements incommittés
et des changements incommittés
et certains sont stages.
Mais
en plus de clients, vous avez ces deux boxes
et cela s'appelle l'issue.
Quand vous stagez quelque chose, cela se dédié.
Parce que cela se dédié
dans la autre section.
Et si vous vous dites que vous avez stagez
quelque chose que vous n'avez pas envie, vous devez le faire.
Vous devez le faire et le faire.
Et cela se dédié.
Vous n'avez pas un visage de bird's eye
de tout ce qui se passe.
Et c'est quelque chose qui m'a pas été
abattu depuis un temps,
parce que certains apps ont déjà
déjà eu un concept de checkbox.
Mais généralement, seulement au niveau de file.
Et je pense que c'est super utile.
Vous voyez les listes de vos files,
et vous dites, c'est celui-ci, celui-ci,
et ils se sont checkés.
Et ils ont fait un mouvement
de la ligne de checkbox.
C'est un single view.
Et vous pouvez juste check stuff.
Et quand vous voyez le contenu de file,
vous pouvez aussi juste check les lignes dans le casque.
Oui, vous avez 3 lignes changées.
Vous pouvez juste check le deuxième,
et maintenant, il est stage,
et ça se dédié.
Et c'est ça.
Je suis en train de dédié
ce qui se passe, parce que c'est simple.
Visuellement, vous devez le checker.
Mais le truc est, c'est monstrous,
et c'est complexe.
C'est plus compliqué de
réimplier ça.
Je n'ai pas préparé pour ça.
Ça a été le mois de travail
pour réimplier.
Parce que le Wayget Works
vous provoque de ces deux divs.
Vous pouvez demander pour deux divs
de la ligne de checkbox,
et de la ligne de checkbox.
Vous pouvez pas demander
pour les divs combinés.
Vous devez le faire.
Et c'est ça que se passe
dans le Redcon.
C'est un whole bunch de choses.
Redcon collecte ces deux divs.
Ils sont générés par Witegit.
C'est juste une ligne de texte,
une ligne de texte,
avec des données de metadata.
C'est la nouvelle ligne de lignes.
C'est une ligne d'addit.
Redcon fuses ces deux ensemble.
Il révue
les deux pièces de texte
et compare-les.
Il faut quanceler ağлект gangs
سے humor Ewop
pas sûr.
Les vend pieces ose Flu classify
les deux par exemple.
parce que le nombre de lignes, par exemple.
Donc, une des choses réconnues est que
il tient à déployer juste l'infos qui sont rélevés.
Si tu regardes le commit,
certains clients peuvent te dire le message du commit,
le hash du commit, c'est utile,
et le author, ok?
Et ils vont te dire le commiteur, ok?
Même si c'est exactement le même que le author,
pas rélevé, c'est le même.
Et ils vont te dire le hash des parents, ok?
C'est un peu trop fort.
Certains clients même te disent le hash du commit,
et je pense que 90% des gens ne savent pas le commit.
Et ils sont dits, ils n'ont pas de savoir.
C'est vraiment une information réellue.
Et dans le défi, je vais vous le dire,
c'est vraiment facile.
Dans le défi, Kit va vous montrer
ces petits signes,
comme le sign, le sign, le sign, 13, 12, etc.
C'est la même chose,
beaucoup de gens ne savent pas ce que les numéros sont.
Ils ne savent pas ce que les numéros sont,
ils sont vraiment super,
il y a un peu d'interessants,
mais il n'y a pas de soucis.
Donc, ce que les numéros savent,
il y a des numéros,
et avec les numéros de la ligne,
c'est ce que je suis en train de faire.
La même chose, un nouveau numéro,
il y a des numéros,
il y a des numéros,
ce que je peux utiliser,
ce que je peux faire,
c'est de ne pas avoir des questions.
Le problème est que
la question est souvent rien,
vous regardez votre éditor
et la même ligne a un numéro
complètement différent,
c'est étrange.
Redconn se déplace seulement un numéro,
et ça toujours matche
ce que vous voyez dans votre éditor.
Ce qui semble comme,
c'est clair,
si ils ne savent pas de Kit,
ils diront que la ligne est une numéro de la ligne,
ils ne pensent pas de tout ça.
Mais ça se passe,
c'est techniquement beaucoup de travail,
parce que si vous avez des numéros différents,
il y aura des numéros de la ligne.
Donc quand vous avez des numéros de la ligne,
souvent,
vous avez deux numéros,
et parfois, vous n'avez pas
les numéros que vous avez besoin.
Donc dans le travail de votre éditor,
l'un des numéros est le numéro
de la ligne,
mais dans le stage, Redconn
a de la même chose de la ligne.
Donc après,
il a assemblé les deux numéros,
il a dû faire des lignes
et infermer les numéros de la ligne
pour des lignes.
Encore une fois, c'est déterminant,
comme ce n'est pas un lignement plausible ou ligné,
mais il a de lignes
de contexte pour les lignes
dans le stage,
si la ligne est dans le stage
dans des conséquences,
Kit ne vous dit pas de cette ligne.
Je vous ai dit,
que tout cela, toutes ces compétitions,
toutes ces choses,
et le résultat est,
vous regardez Redconn, les fads,
il y a trois lignes, vous choisissez le numéro 2,
il dit numéro 2, vous stagez,
et maintenant, c'est déterminé.
Il n'y a rien de plus,
et vous pensez, hey, il n'y a rien de plus,
et c'est tellement faux,
c'est tellement untrue,
en fait, les lignes se sont construits
d'une complètement différente source,
et le numéro 2 était précédemment donné par Kit,
mais cela était compétuité en contexte,
mais en fait, rien n'a changé,
et il y a tellement de travail à faire dans cet endroit,
où il est stable,
comme vous l'avez prévu.
Je vous apprécie de cette approche.
Vous avez vraiment fait ça
en mode de hard mode,
pour faire que le stage
et l'un de l'autre
sont des points,
et ne devraient pas
penser à cela tellement.
Mais si vous allez dans le CLI
et vous avez un status,
je pense que vous verrez
le stage actuel et le stage non-stage,
ce qui est
une chose très difficile
de faire, comme vous l'avez dit.
Donc, avant le show,
on a parlé d'autres outils que j'avais mon avis sur.
Il y a un outil appelé J.J.
ou Jiu Jitsu,
qui est un outil populaire
alternative du CLI
du UX pour Kit.
Et l'une des choses que ça fait
c'est que ça a un copier en travail
qui est un commis.
Donc, en fait,
quelles codes que vous avez
dans le progrès
dans votre repo,
ça automatique
le met en place
d'un commis.
C'est un problème
un peu simple
d'avoir
un commis en travail
comme je vous l'ai dit.
Et donc,
ce n'est pas même pensé en question
de ce stage ou non-stage, c'est
automatiquement toujours commis en travail.
Le problème est que si vous allez
dans un régler,
et que vous regardez le state de choses,
c'est comme, oh, il n'y a rien de stage
et j'ai ce commis, et maintenant
ils doivent faire un peu de choses
dans le background pour
garder le tract de, OK, quelle est la history
et les choses que vous voulez en plus.
Il y a des décisions
que vous devez faire
qui sont sorties de
différentes que les décisions que vous faites.
Mais je pense que c'est intéressant de votre approach
que vous faites ça,
vous gardez la réplique
du state de travail,
d'un modèle alternatif
qui sortie de la réplique.
En fait,
on a
Scott, qui est l'un des founders
de GitHub et il et sa team
font ce tool appelé Git Butler
et ils ont des branches virtuelles.
Vous pouvez avoir
beaucoup de choses en progrès
qui sont en stage,
mais elles existent en différentes branches virtuelles.
Encore une fois,
le problème ici
est que si vous regardez,
si vous faites le status de la CLI,
c'est comme, oh, vous êtes sur le branch de Git Butler integration.
Et comme,
tout ce qu'il y a
qui vous dit à ce point, la CLI
est juste une chose de la vie.
Il y a tous ces traitements,
je l'apprécie
du travail que vous avez fait
pour garder
le modèle normal
qui est sorti
de la réplique.
C'est super intéressant,
parce que l'une des choses que j'ai considérée
pour Redcon, l'une des plus anciennes sketches
dans mon livre,
c'est que j'étais au commissariat,
et la idée était,
oui, le commissariat de création est trop long,
je suis une personne impatient,
et en prenant le commissariat,
c'est trop long,
si je n'avais pas de pression du bouton de commissariat,
et c'était la toute idée à ce point,
et pour cela,
le commissariat est créé dès que vous étiez des choses,
pourquoi pas, et quand vous étiez plus
plus, ça se démarre,
et puis, je pensais,
mais ça va être confusant,
et aussi, si on apprécie le bouton de commissariat,
c'est comme, il me semble
acheter, confirmer quelque chose.
Je me suis dit,
et j'ai pensé à la prochaine idée,
qu'est-ce que si tout était stage,
par default,
on pourrait toujours être un stage,
mais ça serait bien.
J'ai vraiment aimé cette idée,
car ça a fait le coup de stage,
quand vous êtes intéressés,
et je me suis dit, mais ça va m'améliorer,
si vous utilisez d'autres outils,
dans les parallèles, Redcon
va être un truc.
Et oui,
j'ai pensé,
j'ai pensé à la dernière,
mais oui, dans Redcon, j'ai fait beaucoup de travail,
pour que ça respecte
l'existence de choses,
les outils de travail,
les autres outils,
le modèle,
l'existence de modèle.
Et oui, pour la plupart,
ce n'est pas mal,
ce n'est pas mal,
il ne sera pas mal,
mais il faut que les outils de travail
soient en train de créer des branches,
des branches techniques,
et vous pouvez totalement utiliser Redcon
dans le concert avec votre commande-line,
un stage dans votre commande-line
et commettre à Redcon,
etc.
Pour la plupart, vous ne verrez pas
ce qui se passe, Redcon
s'arrête de remettre
ses deux outils à la porte,
d'un mot, dans le cas du home japonais,
ce genre de ressources,
des ressources que vous pouvez avoir,
oui.
En quelque sorte,
je dois vous rappeler,
il ne faut pas faire ça,
quand vous remet,
il ne faut pas utiliser
l'interactive remet systeme,
il ne faut pas continuer le terminal,
parce que c'est une façon complètement différente
de faire des choses.
Et quand ça s'arrête,
les changements de temps,
quand vous réservez les conflits,
comme dans votre position de travail,
c'est préserve,
c'est pas un stage,
c'est pas un stage actuel,
mais c'est
le respect
de l'environnement.
C'est bien, et ça vous permet
de ne pas avoir de la whole
monde, parce que les outils de la mostre
ont de l'embauchement
de tout le start,
d'être un réel contente,
d'être un replacement dans votre workflow,
alors que c'est comme,
il y a une partie de Git qui s'occupe,
qui s'occupe de tous les autres outils,
et que l'outil s'occupe de tout le monde.
C'est un bon point, et c'est
doublement relevant ici,
parce que c'est quelque chose
que j'ai appris à la start,
dans le Redcon,
tout le service
a été construit
sur le réel contente.
Pour un rebase, je ne peux pas utiliser le rebase de Git,
parce que si vous voulez un rebase
qui est bien pausé,
Git va dire non, c'est un conflit.
Redcon a un rebase
logic, comme si le rebase est là.
Et tout le service,
même juste en déclenchant le nom de la marque
de la courte,
quand vous ré-write la histoire,
c'est un rebase attaché,
et quand vous êtes pausé,
vous avez checké un nouveau commis.
Et c'est ce qui se passe
dans la ligne de command, qui vous montre
le passage du commis, qui n'est pas tout le temps
que vous ne vous inquiétez pas.
Vous voulez être ré-writing le main,
donc il vous montre le main.
Dans le Redcon, dans la liste branch,
il vous montre le main,
parce que ce n'est pas le visuel,
c'est le visuel virtualisé.
Et donc, tout le feature de Redcon
doit être sorti,
c'est l'une des choses qui me s'est trompé,
qui me s'est trompé.
Je ne peux pas utiliser
beaucoup de logiciel original,
ou je dois bien plus faire un rap
pour le rappeler au niveau de l'exercice.
C'est très utile pour Redcon
pour le respect du workflow.
Et comme vous le disiez,
ça me permet de ne pas
remplir le monde.
Donc, en rafraîchant ici,
on a toujours aimé
poser une question de la question de la future.
Et pour vous, je veux vous demander,
quel est le futur de la contrôle de la source ?
C'est une bonne question.
C'est intéressant, parce que Git est là,
tout le monde utilise le Git,
c'est comme le default.
Il y a une monoculture,
une monoculture de Git. Et ce n'est pas
pas mal, parce que Git est vraiment bon,
Git est une source d'opérations, Git continue
de se développer.
Je ne sais pas, c'est difficile de imaginer
tout ce qu'on a rempli, mais
je pense que c'est toujours le cas,
comme vous avez toujours cette chose, c'est difficile
d'imaginer tout ce qu'on a rempli, et ça y est.
Je ne sais pas, à la fois,
aussi, le truc qui s'est rempli
est l'écosystème.
On a Git Hub,
on a Git Clients,
on a un appel de Redcon,
et tout ça,
c'est un peu difficile de remplir.
Si quelqu'un voulait remplir,
il aurait dû être très différent.
En même temps,
il y a beaucoup de choses
qui sont malade avec Git,
pour tout le bon,
Git est incroyable, mais il y a aussi
beaucoup d'autres qui sont malades.
Je pense que c'est possible.
Quand j'ai commencé à utiliser Git,
la première fois que je l'ai entendu
c'était un collègue,
et nous étions en train de
utiliser l'Asvn à travail,
mais il a utilisé un adaptateur,
il a utilisé Git Commence,
et des concepts
sur le top de l'Asvn repo.
Peut-être que quelque chose comme ça
va arriver sur le top de Git.
C'est possible.
C'est drôle de penser à toutes les apps
qui peuvent arriver,
mais aussi à l'exemple de
ce que vous faites,
où vous êtes en train de
construire le top de Git
pour aller au plus mile
qu'ils ne doivent pas.
Oui.
Je peux totalement dire
que Git est un
peu de l'infrastructure,
où le modèle
est rété,
et les services sont rété.
Mais ce que vous faites
et que beaucoup d'autres produits
sont en train de faire,
c'est que le X change de la surface
et la surface
se change, mais les choses
qui sont sous la coude sont de la même manière.
On a probablement des exemples
d'autres zones, comme les web,
comme les conditions de compétibilité
et de compétibilité,
mais les structures de la surface
sont en train de se faire.
Un set de bons prématives
va être réel.
Oui.
Bien sûr.
Merci d'avoir regardé
RETCON.
Je vais l'utiliser
quand je veux un réorder.
Merci d'avoir regardé.
Merci, Nathan.
C'est un grand congrès.
Le toulou est incroyable.
Je suis content d'en essayer.
Pour les listeners
qui veulent en essayer,
vous pouvez aller à retcon.app.
C'est retcon.app.
Cool.
Et merci d'avoir regardé.
Episode suivant:
Les infos glanées
devtools.fm:DeveloperTools,OpenSource,SoftwareDevelopment
A podcast about developer tools and the people who make them. Join us as we embark on a journey to explore modern developer tooling and interview the people who make it possible. We love talking to the creators front-end frameworks (React, Solid, Svelte, Vue, Angular, etc), JavaScript and TypeScript runtimes (Node, Deno, Bun), Languages (Unison, Elixor, Rust, Zig), web tech (WASM, Web Containers, WebGPU, WebGL), database providers (Turso, Planetscale, Supabase, EdgeDB), and platforms (SST, AWS, Vercel, Netlify, Fly.io).
Tags