Archive: August 8, 2022

Uncategorized

HISTORY OF GIT

Git is one of those tools that is so simple to use, that you frequently don’t discover a great deal of nuance to it. You wind up cloning a repository from the Web as well as that’s about it. If you make changes, perhaps you track them as well as if you are truly polite you may produce a pull request to provide back to the project. however there’s a great deal more you can do. For example, did you understand that Git can track collaborative Word documents? Or manage your startup data across several Linux boxes?

Git belongs to a household of software application products that do revision (or version) control. The concept is that you can establish software application (for example) as well as keep track of each revision. great systems have provisions for enabling several people to work on a job at one time. There is likewise usually some method to split a job into different parts. For example, you may split off to establish a version of the product for a different market or to try an experimental function without breaking the typical development. In some cases, you’ll ultimately bring that split back into the primary line.

Although in the next installment, I’ll provide you some strange utilizes for Git you may discover useful, this publish is mainly the story of exactly how Git came to be. open source advancement is understood for flame wars as well as there’s at least a few in this tale. as well as in true hacker fashion, the hero of the story decides he doesn’t like the tools he’s utilizing so… well, what would you do?

War of the version Controllers

Historically, a great deal of software application that did this function had a central-server mindset. That is, the code lived on the network somewhere. When you wished to work on a data you’d inspect it out. This only worked if nobody else had it inspected out. Of course, if you were successful, nobody else might inspect out your data up until you put them back. If you were away from the network as well as you wished to work on something, as well bad.

However, more contemporary tools relax a few of these restrictions. Ideally, a tool might provide you a regional copy of a job as well as immediately keep other copies updated as you release changes. This method there was no central copy to lose, you might work anywhere, as well as you didn’t have to coordinate working on different things with other teammates.

Closed Tool

A extremely big distributed team establishes the Linux kernel. By late 1998 the team was having a hard time with revision management. A kernel developer, [Larry McVoy], had a business that created a scalable distributed version manage product called BitKeeper. Although it was a industrial product, there was a neighborhood permit that enabled you to utilize it as long as you didn’t work on a contending tool while you were utilizing the product as well as for a year thereafter. The limitation used to both industrial as well as open source competition. Although the product kept most data on your machine, there was a server component, so the business could, in fact, track your usage of the product.

In 2002, the Linux kernel team embraced BitKeeper. [Linux Torvalds] was among the proponents of the new system. However, other designers (and interested celebrations like [Richard Stallman] were concerned about utilizing a proprietary tool to establish open source. BitMover — the business behind BitKeeper — added some gateways to ensure that designers who wished to utilize a different system could, to some extensão.

For the most part, things quieted down with only occasional flame skirmishes erupting right here as well as there. That is up until 2005 when [McVoy’s] business revealed it would discontinue the free version of BitKeeper. Ostensibly the reason was because of a individual establishing a client that added features from the industrial version to the free one.

New Tools

As a result, two jobs spun as much as establish a replacement. Mercurial was one as well as Git, of course, was the other. [McVoy] contacted a industrial client demanding that their worker [Bryan O’Sullivan] stop contributing to Mercurial, which he did. Of course, both Mercurial as well as Git came to fruition, with Git ending up being not only the kernel team’s version manage system however the system for a great deal of other people as well.

Birth of Git

[Linus] did look for one more off-the-shelf system. None at the time had the performance or the features that would fit the kernel advancement team. He designed git for speed, simplicity, as well as to prevent doing the exact same things that CVS (a reviled version manage program) did.

Initial advancement is stated to have taken a few days. since the version 1.0 release in late 2005, the software application has spawned more than one major website as well as has ended up being the system of option for many developers, both open source, as well as commercial.

Repo Man

The flow chart shows the tricK de exatamente como Git lida com grandes ofertas de desenvolvedor de uma só vez: repositórios ou repos. Cada designer tem uma cópia geral de todo o trabalho (o repositório regional). Na verdade, se você não se importa com o compartilhamento, você nem requisita um repositório remoto. Seu repo pessoal é tanto um trabalho git completo quanto qualquer outra pessoa, até mesmo o remoto, o que é mais provável no GitHub ou mais um servidor de rede. Você faz suas modificações no diretório de trabalho, no palco do que você é “feito” com (por enquanto), além de dedicada ao seu repo. Quando é hora, você pressiona suas modificações tanto quanto o controle remoto, bem como se fundir com as alterações de outras pessoas.

Curiosamente, o Git não funciona apenas em dados de texto (vou mostrar mais sobre isso na próxima parcela). No entanto, funciona melhor em dados de texto, pois é sábio suficiente para observar modificações em dados que não se sobrepõem, bem como mesclá-los automaticamente. Então, se eu reparar um bug, incluindo um loop para algum código, bem como modificá-lo, algumas mensagens de erro, Git vai dizer tudo quando nosso código se funde.

Isso nem sempre funciona, é claro. Que leva a conflitos que você tem que resolver manualmente. No entanto, a menos que você tenha duas pessoas tocando as partes exatas exatamente as mesmas partes do código, Git geralmente faz uma boa tarefa de resolver a diferença. Claro, os dados binários geralmente não conseguem esse luxo. Você não pode diferentemente um ícone para ver que uma pessoa pessoa desenhou um bigode, bem como mais uma pessoa girou o fundo verde. No entanto, tecnicamente, se você puder descobrir o algoritmo, você pode adicioná-lo ao git.

Desfecho

Se você quiser aumentar sua compreensão do Git além de apenas fazer um clone, você pode fazer pior do que passar 15 minutos neste tutorial. Se você já entende o básico, você pode descobrir algumas coisas novas em um tutorial mais avançado ou inspecionar o vídeo de uma palestra [Linus] fornecida no Git por enquanto.

Em 2016, a propósito, o bitskeeper revelou que eles se mudariam para a autorização do Apache, que, é claro, é de código aberto. tipo de irônico, não é?

Créditos fotográficos:

Soldado de Tux, por [Sharkey], CC BY-SA 3.0

[Linus Torvalds] da revista Linux, CC BY-SA 3.0

Fluxograma por [lbhtw], cc by-sa 3.0

Entrada do Prêmio Hackamia: Um portão elétrico móvel

Os portões elétricos podem ser um dispositivo excepcional de economia de mão-de-obra, permitindo que um permaneça em um automóvel enquanto o portão abre e fecha por ativação remota. No entanto, pode tornar-se um pouco de problemas de malabarismo dos vários controles remotos e keyfobs necessários, então [BREDMAN] criou uma opção alternativa – controlando um portão elétrico sobre a rede móvel.

Há 20 anos, isso pode ter sido alcançado pela fiação de uma série de relés até a caminha de um carpógrafo. Nos dias de hoje, é um pouco mais sofisticado – um módulo GSM / GPRS é conectado a um arduino nano. Quando uma chamada recebida é detectada, o portão é aberto. Após uma espera de 3 minutos, o portão é mais uma vez fechado.

[Bredman] sofreu alguns contratempos durante o projeto, devido aos caprichos de trabalhar com serial no Arduino Nano e a linha de reset no módulo GSM A6. No entanto, no geral, o portão era um dispositivo básico para interface, como lotes de tais aparelhos, tem pinos bem rotulados e documentados para enviar os sinais abertos e próximos.

[Bredman] teve o cuidado de projetar o sistema para evitar a operação indesejada. O sistema é criado para fechar automaticamente o portão, portanto, não importa quão muitas vezes o controlador seja chamado, o portão sempre acabará em um estado fechado. Atenção especial também foi paga para garantir que o controlador pudesse gerenciar graciosamente a conexão perdida com a rede móvel. São escolhas como essas que podem fazer um projeto muito mais satisfatório a usar – um sistema de portão que regularmente requer atenção e reinicialização provavelmente não durará muito com seus usuários.

No geral, é um ótimo projeto que mostra como são facilmente acessíveis esses projetos – com alguns módulos e domínio muito cuidadosamente escolhidos de comunicações seriais, é uma CINCH para reunir um projeto para conectar quase qualquer coisa à Internet ou às redes móveis nos dias de hoje. Para uma tomada diferente, confira este abridor da porta da garagem que faz login no Google Drive.

O Hackadayprize2017 é patrocinado por:

Uncategorized

Retrotecracular: História dos sistemas de foguetes antibalinéticos U.S.

nesta parcela de retrotetracular, estamos dando uma olhada na história do sistema de mísseis antibalines dos Estados Unidos. A guerra gelada era um grande motorista de desenvolvimento tecnológico, bem como essa defesa de foguetes é um ótimo exemplo. Em seus muitos fundamentais, este é um sistema de radar capaz de rastrear objetos em três dimensões. Ele utiliza transmissores separados, bem como receptores que são sincronizados para girar o mesmo tempo.

O filme, que é cerca de quarenta e cinco minutos, preocupado nosso interesse desde a taxa de interesse da [Dammitd] na lente Luneburg usada pelo sistema. Por volta das 11:10 no vídeo após o intervalo, este elemento é discutido. Dentro de uma cúpula como a vista acima é um refletor feito de blocos de espuma de poliestireno que foi atado com pedaços de metal. Esta lente é estacionária, com o receptor girando em torno dele para reunir as ondas do transmissor enquanto os ecos saltando fora de um item no céu são focados pela lente.

O antigo dispositivo de pinball vive como relógio

Um grande problema com a restauração de máquinas de arcade ou pinball antigas é encontrar peças originais para obtê-las correndo novamente. Isso é parte da diversão, no entanto; quando algo finalmente funciona depois de semanas ou meses de esforço. Por outro lado, em alguns casos a única esperança para partes antigas que nunca estarão em um dispositivo de pinball novamente é para [Randy] para encontrar eles. Uma daquelas partes que ele tinha deitado era um backglass para uma máquina antiga e optou por transformá-lo em um relógio de palavras distinta.

O dispositivo de pinball original foi construído em 1956, e apesar de sua idade, o backglass não praticamente nenhum sinal de desgaste ou dano. Existem 43 luzes neste dispositivo específico que é muito mais do que suficiente por 12 horas, minutos (pelos 10s), segundos e alguns extras. Um atiny85 serve como controlador e dirige uma frota de Neopixels escondidas no visor. Há também três botões que controlam o brilho e permitem que o tempo seja definido.

Certifique-se de conferir o vídeo abaixo deste relógio um-de-um-tipo em ação. Muito mais entrou nessa construção, incluindo enquadrando o copo, dando-lhe uma camada de tinta e polonesa e programando o relógio no microcontrolador. Backglasses velhos de máquinas de pinball parecem ser relativamente populares para se repetir em relógios muito mais convencionais, também, até mesmo relógios de natureza atômica.

Kansas City Makerfaire: Proteção de GreentechWeeekly

Nós não tínhamos estado no MakerFaire por muito tempo quando corremos para alguns fãs de Hackaday carregando em torno de dispositivos de câmera de vídeo, bem como microfones. Eu concordei com uma entrevista rápida para o show greentechweekly.tv, que foi relativamente indolor, então todos nós fomos nossos caminhos separados. [Ecogeeco] Mais tarde me enviou a filmagem, assim como eu não podia ajudar No entanto pensar … esses homens fizeram uma tarefa muito melhor do que eu! Eles fizeram algumas excelentes perguntas, obtiveram algumas filmagens excelentes, de alguma forma tratadas para obter um bom áudio também!

Você reconhecerá numerosos projetos, sem dúvida, é verdadeiramente grande ouvir o que os criadores têm que afirmar sobre eles, em suas próprias palavras. Aproveitar.

Lições que posso descobrir desses caras:

Traga uma câmera muito melhor

Traga um operador de câmera de vídeo

Mostrar URLs no vídeo

demorar muito mais tempo para fazer perguntas

Transformando um arduino em um teclado USB

O recém-lançado Arduino Leonardo tem algumas características muito interessantes, muitas notavelmente a capacidade de atuar como um teclado USB e rato graças ao novo microcontrolador ATMEGA 32U4. Esse recurso não é exclusivo para o Leonoardo, como [Michael] discute em uma construção que ele enviou – o UNO de Lowly Arduino também pode servir como um teclado USB HID com apenas uma atualização de firmware.

O Arduino Uno (e Mega) se comunicam ao seu computador através de um microcontrolador separado Atmega8u2. Simplesmente enviando novo firmware com a atualização do firmware do dispositivo Arduino, é fácil ter sua antiga conselho de arduino adquirir algumas das características de quadros mais recentes, como o Teensy ou Leonardo.

[Michael] passa pelas etapas necessárias para tornar esse upgrade e termina sua construção, mostrando um projeto de botão arduinofied “corte e colar”, bem como alguns controles multimídia. Você pode verificar aqueles compilações no vídeo após o intervalo.

Se a emulação de um teclado USB não é sua coisa, também é possível instalar o firmware da Lufa para emular tudo, desde joysticks até dispositivos de áudio USB. Muito legal e muito útil.