<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Salma</title>
    <description>The latest articles on DEV Community by Salma (@salmacoder).</description>
    <link>https://dev.to/salmacoder</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F164784%2Fe14c3484-7c14-43f2-baf1-cca2db07413b.jpeg</url>
      <title>DEV Community: Salma</title>
      <link>https://dev.to/salmacoder</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/salmacoder"/>
    <language>en</language>
    <item>
      <title>How to Installing Git and Create your first Github Account in (Linux)</title>
      <dc:creator>Salma</dc:creator>
      <pubDate>Tue, 25 Feb 2020 09:28:08 +0000</pubDate>
      <link>https://dev.to/salmacoder/how-to-installing-git-and-create-your-first-github-account-in-linux-3mmf</link>
      <guid>https://dev.to/salmacoder/how-to-installing-git-and-create-your-first-github-account-in-linux-3mmf</guid>
      <description>&lt;p&gt;Before we start the procedure of &lt;strong&gt;Git&lt;/strong&gt; configuration and creation of your first &lt;strong&gt;Github&lt;/strong&gt; account, let me give you a quick explanation about &lt;strong&gt;Git&lt;/strong&gt; and &lt;strong&gt;Github&lt;/strong&gt;.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;What is Github?&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Github&lt;/strong&gt; is one of the leading hosting platform/websites that help and allow you(&lt;strong&gt;Developers&lt;/strong&gt;) to&lt;/p&gt;

&lt;p&gt;1- Host/Store.&lt;br&gt;
2- Manage.&lt;br&gt;
3- Track.&lt;br&gt;
4- Collaborate with other developers.&lt;br&gt;
5- Control any changes you do to your codes by using another great tool called Git.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;So, What is Git?&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Git&lt;/strong&gt; is an open-source distributed &lt;strong&gt;Version Control System&lt;/strong&gt; (VCS) that designed to help you store, manage, track, control...etc your codes in &lt;strong&gt;Github&lt;/strong&gt; whether small or large fastly and efficiently.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;By the way, There are two ways to use Git:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;1- First Way Called &lt;strong&gt;GUI Git&lt;/strong&gt; Applications &lt;strong&gt;GUI Git&lt;/strong&gt; is a type of application allow you to use the &lt;strong&gt;Git&lt;/strong&gt; interface.&lt;/p&gt;

&lt;p&gt;2- The second way is called the Command Line tool (&lt;strong&gt;CLI&lt;/strong&gt;), Which gives you the ability to run &lt;strong&gt;Git&lt;/strong&gt; commands from your terminal. (And this is what I will follow to install &lt;strong&gt;Git&lt;/strong&gt; in your terminal).&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Installing Git in (Linux)&lt;/strong&gt;
&lt;/h1&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Linux Installation Steps&lt;/strong&gt;
&lt;/h3&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Step 1&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;First, update your Linux system by typing the following command in your terminal&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XImgYfVH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/t1ypeu2jaer2ts7n7041.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XImgYfVH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/t1ypeu2jaer2ts7n7041.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Step 2&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Run the below command in your terminal to install Git&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--A5offnGD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/xrmy1ytic431vo2bw5b8.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--A5offnGD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/xrmy1ytic431vo2bw5b8.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Step 3&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Now we need to make &lt;strong&gt;Git&lt;/strong&gt; work properly by configuring &lt;strong&gt;Git&lt;/strong&gt; and &lt;strong&gt;Github&lt;/strong&gt;, And we can do that by setting our personal information with &lt;strong&gt;Git&lt;/strong&gt; to enable you to link your local &lt;strong&gt;Git&lt;/strong&gt; user (You) to &lt;strong&gt;Github&lt;/strong&gt;. The Benefit of this step is that when you work in a project with a team, everyone can see what you committed (&lt;strong&gt;You can consider that as your personal signature&lt;/strong&gt;).&lt;/p&gt;

&lt;p&gt;Enter this command to set your information with &lt;strong&gt;Git&lt;/strong&gt; and please don't forget to type your &lt;strong&gt;name&lt;/strong&gt; between the double quotation marks (&lt;strong&gt;Don't delete the quotation marks though&lt;/strong&gt;)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--X-UbAu-0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/c7xbjs3fssybypx2xl3r.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--X-UbAu-0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/c7xbjs3fssybypx2xl3r.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Step 4&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Great, we installed &lt;strong&gt;Git&lt;/strong&gt; already. What you should do now before you link it to &lt;strong&gt;Github&lt;/strong&gt; is, check &lt;strong&gt;Git&lt;/strong&gt; work properly by running the below commands&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cO_FNIgc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3koanb2actqcs5cckp8a.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cO_FNIgc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3koanb2actqcs5cckp8a.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Step 5&lt;/strong&gt;
&lt;/h4&gt;

&lt;h5&gt;
  
  
  &lt;strong&gt;Create your personal account with GitHub&lt;/strong&gt;
&lt;/h5&gt;

&lt;p&gt;Please visit the &lt;a href="https://github.com/"&gt;Github.com&lt;/a&gt; website and sign-up your &lt;strong&gt;Username&lt;/strong&gt;, &lt;strong&gt;Email&lt;/strong&gt;, &lt;strong&gt;Password&lt;/strong&gt;. (&lt;strong&gt;you don't need to type the same username and e-mail you used before with git, but it's a good idea if you use the same one&lt;/strong&gt;)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XJyo-uq_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/dt4cdb4zcv0nlqh34d3p.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XJyo-uq_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/dt4cdb4zcv0nlqh34d3p.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Step 6&lt;/strong&gt;
&lt;/h4&gt;

&lt;h5&gt;
  
  
  &lt;strong&gt;Create your SSH Key&lt;/strong&gt;
&lt;/h5&gt;

&lt;p&gt;&lt;strong&gt;What is the SSH key?&lt;/strong&gt; When working with a &lt;strong&gt;GitHub&lt;/strong&gt; repository, you'll often need to identify yourself to &lt;strong&gt;GitHub&lt;/strong&gt; using your &lt;strong&gt;username&lt;/strong&gt; and &lt;strong&gt;password&lt;/strong&gt;. An &lt;strong&gt;SSH key&lt;/strong&gt; is an alternate way to identify yourself that doesn't require you to enter your username and password every time.&lt;br&gt;
&lt;strong&gt;SSH keys&lt;/strong&gt; come in pairs, a public key that gets shared with services like &lt;strong&gt;GitHub&lt;/strong&gt;, and a private key that is stored only on your computer. If the keys match, you're granted access.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Source of ٍStep 6 explanation:&lt;/strong&gt; &lt;a href="https://jdblischak.github.io/2014-09-18-chicago/novice/git/05-sshkeys.html"&gt; Software Carpentry&lt;br&gt;
 &lt;/a&gt;Website.&lt;/p&gt;

&lt;p&gt;Let's first check if we have an &lt;strong&gt;SSH key&lt;/strong&gt; already installed or not. Type this into your terminal&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--m7tOcOPp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/cc9s89peiu3dzwg3bdlj.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--m7tOcOPp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/cc9s89peiu3dzwg3bdlj.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you got a message in your output: &lt;strong&gt;No such file or directory&lt;/strong&gt;, that means you don’t have an &lt;strong&gt;SSH key&lt;/strong&gt; and you need to create a one, but if you got a message that you already have a key, then you are good to go to &lt;strong&gt;Step 7&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Now let's create your &lt;strong&gt;SSH key&lt;/strong&gt;. Run the below command and don't forget to replace what inside the brackets and write your &lt;strong&gt;Email&lt;/strong&gt; without including the brackets (&lt;strong&gt;&amp;lt;&amp;gt;&lt;/strong&gt;) so the command will look like this &lt;strong&gt;(ssh-keygen -C &lt;a href="mailto:salma@devcompany.com"&gt;salma@devcompany.com&lt;/a&gt;)&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--UjpjYgwm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/i2xosxkpxwhdyfma67r8.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UjpjYgwm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/i2xosxkpxwhdyfma67r8.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;When it prompts you for a location to save the generated key, just push &lt;strong&gt;Enter&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Next, it will ask you for a &lt;strong&gt;password&lt;/strong&gt;; enter one if you wish, but it’s not required.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Step 7&lt;/strong&gt;
&lt;/h4&gt;

&lt;h5&gt;
  
  
  &lt;strong&gt;Link Your SSH Key with GitHub&lt;/strong&gt;
&lt;/h5&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;It's time we tell &lt;strong&gt;Github&lt;/strong&gt; what is your &lt;strong&gt;SSH key&lt;/strong&gt; so that you can push your code &lt;strong&gt;without typing your password every time&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Now go and login &lt;strong&gt;Github&lt;/strong&gt;, go to your profile image in the top right corner. Then, click on &lt;strong&gt;Settings in the drop-down menu&lt;/strong&gt;. Next, on the left-hand side, click &lt;strong&gt;SSH and GPG keys&lt;/strong&gt;. Then, click the &lt;strong&gt;green button&lt;/strong&gt; in the top right corner that says &lt;strong&gt;New SSH Key&lt;/strong&gt;. Name your key with something descriptive and easy to remember. Leave this window open while you do the next steps.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You need to copy your public &lt;strong&gt;SSH key&lt;/strong&gt;. To do this, we’re going to use a command called cat to read the file to the console.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Note&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;The .pub file extension is important in this case so please run the command below without adding or missing anything&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--RhcrtfNB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/u5m0hxgeh746gdnt62gn.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--RhcrtfNB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/u5m0hxgeh746gdnt62gn.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Copy the output, which starts with &lt;strong&gt;ssh-rsa&lt;/strong&gt; and ends with your &lt;strong&gt;email address&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Do you remember the window that we left it open in &lt;strong&gt;Github&lt;/strong&gt; page, go &lt;strong&gt;back to it&lt;/strong&gt; please and &lt;strong&gt;paste&lt;/strong&gt; the key you copied into the &lt;strong&gt;key field&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Then, click &lt;strong&gt;Add SSH key&lt;/strong&gt;. You’re done! You’ve successfully added your &lt;strong&gt;SSH key!&lt;/strong&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Step 8&lt;/strong&gt;
&lt;/h4&gt;

&lt;h5&gt;
  
  
  &lt;strong&gt;Test Your SSH connection&lt;/strong&gt;
&lt;/h5&gt;

&lt;p&gt;After you've set up your &lt;strong&gt;SSH key&lt;/strong&gt; and added it to your &lt;strong&gt;GitHub account&lt;/strong&gt;, you can test your connection by &lt;strong&gt;following the instruction&lt;/strong&gt; at &lt;a href="https://help.github.com/en/github/authenticating-to-github/testing-your-ssh-connection"&gt;Testing your SSH&lt;/a&gt; &lt;strong&gt;Github&lt;/strong&gt; webpage.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If the output doesn’t correctly match up, then try going through these steps above again&lt;/strong&gt;.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>git</category>
      <category>beginners</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
