Merge pull request #18023 from lujun9972/add-MjAyMDA0MDcgMTUgeWVhcnMgb2YgR2l0LSBIb3cgdG8gZ2V0IHN0YXJ0ZWQgb3IgbGVhcm4gc29tZXRoaW5nIG5ldy5tZAo=

自动选题: 20200407 15 years of Git: How to get started or learn something new
This commit is contained in:
Xingyu.Wang 2020-04-08 09:34:29 +08:00 committed by GitHub
commit 019d4efbd2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -0,0 +1,74 @@
[#]: collector: (lujun9972)
[#]: translator: ( )
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )
[#]: subject: (15 years of Git: How to get started or learn something new)
[#]: via: (https://opensource.com/article/20/4/get-started-git)
[#]: author: (Seth Kenlon https://opensource.com/users/seth)
15 years of Git: How to get started or learn something new
======
On Git's 15th anniversary, learn why it is a major component in keeping
the software industry running.
![Scissors cutting open access to files][1]
If there's anything that's changed software in the past two decades, [Git][2] is at the top of the list.
If you don't use Git personally, you might think it's just a tech fad, an incidental darling among developers just because it was created by the same person who started the [Linux][3] project itself. There may be some truth to that, but Git does manage to achieve some feats that no other industry has managed. With Git, developers spread all over the world are able to work on the same code, literally at the same time, with a history of every change made, and then merge all the work together to result in a finished product. The complexity is enormous, and so the tool itself can get complex, but in the end, it's a major component in keeping the software industry running.
Whether you know Git or not, you'll very likely encounter it should you dig deep enough into open source software or enter into computer science. Whether you use Git to just download an installer package or whether you interface with it daily to manage code, learning more about it is elucidating and empowering.
### Git terminology
As with any specialized tool, there's a lot of jargon in Git. Terms like "clone" and "merge" and "rebase" are mysterious at best, and at worst can feel almost exclusionary. Trying to understand what all of these terms mean can be overwhelming, but not if you take a little guidance from Matthew Broberg's excellent [Git Terminology 101][4] article. In just one quick read, you'll be able to listen in on conversations about Git with real comprehension.
### Getting started with Git
If you need to know how to use Git, then my own [introductory article series about using Git][5] is a great place to start. The articles are several years old now, but as with so many Linux and UNIX technologies, the interface hasn't changed significantly, so the articles are as relevant today as they were when I wrote them. The series introduces you to the most basic concepts of Git, and steps you through the process of creating a repository, committing files, restoring files, merging branches, and much more.
### Common Git services
One of the most common uses of Git is a public Git hosting service, such as GitLab and GitHub. In his [How to clone, modify, add, and delete files in Git][6] article, Kedar Vijay Kulkarni demonstrates the everyday tasks most developers perform with Git. This isn't required reading for non-developers, but it's a must for anyone who wants to contribute to a project on a public Git hosting service. This article addresses Github specifically because it's one of the most common platforms today, but the principles apply to any web front-end for Git, including popular open source frameworks like [GitLab][7], [Gogs][8], and [Gitea][9].
### Try this Git walkthrough
Do you prefer a guided tour to aimless exploration? Sometimes the easiest way to learn something is to mimic someone else's exact steps. You know the end result is a guaranteed success, so you have confidence while performing the exercise, and your brain and fingers get the benefit of repetition, which builds memory. If that's your learning style, then follow along with Alan Formy-Duvall's [practical learning exercise for Git][10] and find out what a successful Git session feels like.
### Git apps
Believe it or not, Git has more interfaces than text you type into a terminal. Obviously there are the web interfaces of Git hosts online, but you can use Git clients on your computer, too. For just a light layer of assistance, read Jesse Duffield's article about [Lazygit][11] or Olaf Anders' article about [Tig][12]. For the full graphical application experience, read my article about [Git-cola][13], [Sparkleshare][14], and [still others][15]. And yes, there are even [interfaces for your mobile devices][16]!
### Learn more about Git
Knowledge is power, so don't let Git be a mystery to you. Whether you use it directly or you only know it by name or you'd never heard of it before, now's a great time to learn about Git. There are great resources out there to help you understand how it works, why it works, and why people love it so much.  Dive in, take it at your own pace, and learn to love Git!
--------------------------------------------------------------------------------
via: https://opensource.com/article/20/4/get-started-git
作者:[Seth Kenlon][a]
选题:[lujun9972][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/seth
[b]: https://github.com/lujun9972
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/document_free_access_cut_security.png?itok=ocvCv8G2 (Scissors cutting open access to files)
[2]: https://en.wikipedia.org/wiki/Git
[3]: https://opensource.com/resources/linux
[4]: https://opensource.com/article/19/2/git-terminology
[5]: https://opensource.com/life/16/7/stumbling-git
[6]: https://opensource.com/article/18/2/how-clone-modify-add-delete-git-files
[7]: https://about.gitlab.com/install/
[8]: https://gogs.io/
[9]: https://gitea.io/en-us/
[10]: https://opensource.com/article/19/5/practical-learning-exercise-git
[11]: https://opensource.com/article/20/3/lazygit
[12]: https://opensource.com/article/19/6/what-tig
[13]: https://opensource.com/article/20/3/git-cola
[14]: https://opensource.com/article/19/4/file-sharing-git
[15]: https://opensource.com/life/16/8/graphical-tools-git
[16]: https://opensource.com/article/19/4/calendar-git#mobile