<?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: Arun Krish</title>
    <description>The latest articles on DEV Community by Arun Krish (@arunkrish11).</description>
    <link>https://dev.to/arunkrish11</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%2F1137565%2F0b757c5c-578f-405d-89e1-ed7ccbdfed81.jpeg</url>
      <title>DEV Community: Arun Krish</title>
      <link>https://dev.to/arunkrish11</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/arunkrish11"/>
    <language>en</language>
    <item>
      <title>Checkout new post!</title>
      <dc:creator>Arun Krish</dc:creator>
      <pubDate>Fri, 03 Apr 2026 05:52:37 +0000</pubDate>
      <link>https://dev.to/arunkrish11/checkout-new-post-3njj</link>
      <guid>https://dev.to/arunkrish11/checkout-new-post-3njj</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/arunkrish11/okay-what-is-redis-447c" class="crayons-story__hidden-navigation-link"&gt;Okay, What is Redis?&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/arunkrish11" class="crayons-avatar  crayons-avatar--l  "&gt;
            &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1137565%2F0b757c5c-578f-405d-89e1-ed7ccbdfed81.jpeg" alt="arunkrish11 profile" class="crayons-avatar__image" width="800" height="1066"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/arunkrish11" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Arun Krish
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Arun Krish
                
              
              &lt;div id="story-author-preview-content-3447751" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/arunkrish11" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&gt;
                        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1137565%2F0b757c5c-578f-405d-89e1-ed7ccbdfed81.jpeg" class="crayons-avatar__image" alt="" width="800" height="1066"&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Arun Krish&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/arunkrish11/okay-what-is-redis-447c" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;Apr 3&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/arunkrish11/okay-what-is-redis-447c" id="article-link-3447751"&gt;
          Okay, What is Redis?
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/beginners"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;beginners&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/database"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;database&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/performance"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;performance&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/tutorial"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;tutorial&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/arunkrish11/okay-what-is-redis-447c" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;5&lt;span class="hidden s:inline"&gt; reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/arunkrish11/okay-what-is-redis-447c#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


              1&lt;span class="hidden s:inline"&gt; comment&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            2 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
    </item>
    <item>
      <title>Okay, What is Redis?</title>
      <dc:creator>Arun Krish</dc:creator>
      <pubDate>Fri, 03 Apr 2026 05:51:33 +0000</pubDate>
      <link>https://dev.to/arunkrish11/okay-what-is-redis-447c</link>
      <guid>https://dev.to/arunkrish11/okay-what-is-redis-447c</guid>
      <description>&lt;p&gt;What is Redis?&lt;br&gt;
Redis (Remote Dictionary Server) is an open-source, in-memory, NoSQL data structure store used primarily as a database, cache, and message broker. It stores data in RAM for extremely fast read/write speeds, commonly for caching, session management, and real-time analytics, handling data as key-value pairs.&lt;/p&gt;

&lt;p&gt;In simple words, it will act like a cache memory to store data as key - value pair. I watched a tutorial to understand Redis. He showed something like, if we don't use redis the website take too much time for each fetching. But if we use redis the first fetching only take that much time, second fetch onward the fetching time will be low.&lt;/p&gt;

&lt;p&gt;In order to understand that, you need to do this tutorial. The code is given below as github gist. Download or copy the code and dance with me.&lt;br&gt;
&lt;a href="https://gist.github.com/arunkrish11/4499ad99ecaf5aff4983f58e0a12bae6" rel="noopener noreferrer"&gt;Redis Gist Code&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You want to open your terminal with current directory and run the two codes given below. One for installing the packages and second one for starting the port.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm i
npm start
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Your port will be open at &lt;code&gt;localhost:5000&lt;/code&gt;. You want to go to the url&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;http://localhost:5000/repos/arunkrish11
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;(it is actually &lt;code&gt;http://localhost:5000/repos/github_id&lt;/code&gt;), so you can see how many repos someone has. You can see something like this,&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ficv445l2e9ny80nyfe7r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ficv445l2e9ny80nyfe7r.png" alt="http://localhost:5000/repos/arunkrish11" width="564" height="162"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now you want to inspect the site and go to the network section. There will be something named finish time. It actually shows how time took to load the site, yeah the fetching time. Now you want to go to the code and remove the first section,&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// 1. Check cache&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;cached&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;username&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;cached&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;res&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;send&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`&amp;lt;h2&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;username&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt; has &lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;cached&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt; repos (cached)&amp;lt;/h2&amp;gt;`&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you refresh the page, then you can see the fetching time is high for each time we refresh.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1djr7mg126ppdoowq7c3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1djr7mg126ppdoowq7c3.png" alt="First refresh" width="503" height="100"&gt;&lt;/a&gt;&lt;br&gt;
(&lt;em&gt;First fetching after code removal&lt;/em&gt;)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyobegj4f2h5zrcho3nie.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyobegj4f2h5zrcho3nie.png" alt="Second refresh" width="503" height="100"&gt;&lt;/a&gt;&lt;br&gt;
(&lt;em&gt;Second fetching after code removal&lt;/em&gt;)&lt;/p&gt;

&lt;p&gt;Now we want to paste the code that we removed earlier.If you refresh now, you can see the difference. The first fetching only take that much time, second onward the fetching time is low.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fku23va49bi63uqhia7bw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fku23va49bi63uqhia7bw.png" alt="First refresh" width="503" height="100"&gt;&lt;/a&gt;&lt;br&gt;
(&lt;em&gt;First fetching after the return of code&lt;/em&gt;)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnt25f08l6wfs5d63vgbb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnt25f08l6wfs5d63vgbb.png" alt="Second refresh" width="503" height="100"&gt;&lt;/a&gt;&lt;br&gt;
(&lt;em&gt;Second fetching after the return of code&lt;/em&gt;)&lt;/p&gt;

&lt;p&gt;So that's it. Catch you in another post. Til then take care, bye.&lt;/p&gt;

&lt;p&gt;Checkout my profiles.&lt;br&gt;
&lt;a href="https://github.com/arunkrish11" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;&lt;br&gt;
&lt;a href="https://dev.to/arunkrish11"&gt;DevTo&lt;/a&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>database</category>
      <category>performance</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Advice needed!</title>
      <dc:creator>Arun Krish</dc:creator>
      <pubDate>Tue, 03 Mar 2026 09:43:36 +0000</pubDate>
      <link>https://dev.to/arunkrish11/advice-needed-1inb</link>
      <guid>https://dev.to/arunkrish11/advice-needed-1inb</guid>
      <description>&lt;p&gt;How can I reach out others or companies for getting an internship or a job? I know most of people in this platform must gone through this stage. Can I get some advice, so I can take a note on it?&lt;/p&gt;

&lt;p&gt;Leave your thoughts or experience with internship or job hunting. I would love to read those.&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>developer</category>
      <category>beginners</category>
      <category>career</category>
    </item>
    <item>
      <title>Sync any Linux folder to Google drive using Rclone + systemd.</title>
      <dc:creator>Arun Krish</dc:creator>
      <pubDate>Sun, 07 Dec 2025 10:58:11 +0000</pubDate>
      <link>https://dev.to/arunkrish11/sync-any-linux-folder-to-google-drive-using-rclone-systemd-8d2</link>
      <guid>https://dev.to/arunkrish11/sync-any-linux-folder-to-google-drive-using-rclone-systemd-8d2</guid>
      <description>&lt;p&gt;Here is the steps to automatically upload your local files in the linux to google drive. &lt;/p&gt;

&lt;h3&gt;
  
  
  Contents in this blog.
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Connect Linux → Google Drive&lt;/li&gt;
&lt;li&gt;Auto-upload specific folders&lt;/li&gt;
&lt;li&gt;Prevent files from being deleted in Drive&lt;/li&gt;
&lt;li&gt;Pause/resume syncing anytime&lt;/li&gt;
&lt;li&gt;Run everything safely with minimal data usage&lt;/li&gt;
&lt;/ol&gt;




&lt;p&gt;&lt;strong&gt;1. Install rclone&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;sudo apt install rclone&lt;/code&gt;&lt;br&gt;
Check version: &lt;code&gt;rclone version&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Configure Google Drive&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Run: &lt;code&gt;rclone config&lt;/code&gt;&lt;br&gt;
Choose:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;n) New remote
name: gdrive
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Remote type &amp;gt; choose: &lt;code&gt;drive&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Client ID → press Enter&lt;br&gt;
Client Secret → press Enter&lt;/p&gt;

&lt;p&gt;Scope → choose: &lt;code&gt;1) Full access&lt;/code&gt;&lt;br&gt;
Use auto config → choose Yes&lt;br&gt;
Rclone will open your browser → Login → Allow access.&lt;br&gt;
Then: &lt;code&gt;Configure as a Shared Drive? → No&lt;/code&gt;&lt;br&gt;
At the end: &lt;code&gt;Keep this remote? → Yes&lt;/code&gt;&lt;br&gt;
Verify: &lt;code&gt;rclone lsd gdrive:&lt;/code&gt;&lt;br&gt;
You should see your Drive folders.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Choose folders to auto-sync&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Example folders: &lt;code&gt;/home/arunkrish/workspace&lt;/code&gt;&lt;br&gt;
These will upload to: &lt;code&gt;gdrive:workspace&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Why NOT use sync?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;sync mirrors your folder, meaning files deleted locally get deleted from Google Drive.&lt;br&gt;
Not good for backups.&lt;br&gt;
So we use: &lt;code&gt;rclone copy&lt;/code&gt;&lt;br&gt;
This only uploads new/changed files — never deletes anything.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. Create systemd auto-upload services&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Workspace service&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mkdir -p ~/.config/systemd/user
nano ~/.config/systemd/user/gdrive-workspace.service
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Contents:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[Unit]
Description=Upload workspace to Google Drive

[Service]
Type=oneshot
ExecStart=/usr/bin/rclone copy /home/arunkrish/workspace gdrive:workspace --verbose --create-empty-src-dirs
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Timer:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;nano ~/.config/systemd/user/gdrive-workspace.timer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Contents:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[Unit]
Description=Run workspace uploader every 5 minutes

[Timer]
OnBootSec=2min
OnUnitActiveSec=5min

[Install]
WantedBy=timers.target
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Enable:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;systemctl --user enable --now gdrive-workspace.timer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;6. Confirm all timers&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;systemctl --user list-timers
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You should see:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;gdrive-workspace.timer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;7. How Smart Auto-Sync Works&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;When internet is OFF → rclone waits.&lt;/li&gt;
&lt;li&gt;When internet is ON → rclone uploads new files.&lt;/li&gt;
&lt;li&gt;Already uploaded files → NOT uploaded again.&lt;/li&gt;
&lt;li&gt;Files deleted locally → NOT deleted in Drive.
This behaves like true cloud backup.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;8. Pause Syncing Anytime (Low Data Mode)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If your internet is weak, pause auto-upload:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;systemctl --user stop gdrive-workspace.timer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Resume:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;systemctl --user start gdrive-workspace.timer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Disable permanently:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;systemctl --user disable gdrive-*.timer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;9. Manual Upload (Optional)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you want to force an upload right now:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;rclone copy /home/arunkrish/workspace gdrive:workspace&lt;/code&gt;&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;10. Summary&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;With rclone + systemd:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Your folders upload automatically&lt;/li&gt;
&lt;li&gt;Data usage stays low&lt;/li&gt;
&lt;li&gt;No file ever gets deleted from Drive&lt;/li&gt;
&lt;li&gt;Works even when offline&lt;/li&gt;
&lt;li&gt;Full control (pause/resume anytime)
This setup is cleaner and more powerful than official sync clients.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>linux</category>
      <category>learning</category>
      <category>debian</category>
    </item>
    <item>
      <title>Start Open Source Contributions Now!</title>
      <dc:creator>Arun Krish</dc:creator>
      <pubDate>Wed, 13 Aug 2025 19:14:15 +0000</pubDate>
      <link>https://dev.to/arunkrish11/start-open-source-contributions-now-25pe</link>
      <guid>https://dev.to/arunkrish11/start-open-source-contributions-now-25pe</guid>
      <description>&lt;h2&gt;
  
  
  ✨ How to Write Commit Messages &amp;amp; Pull Requests for Open Source Contributions
&lt;/h2&gt;

&lt;p&gt;Contributing to open-source projects on GitHub is a fantastic way to improve your skills, build your portfolio, and give back to the community.&lt;br&gt;&lt;br&gt;
But… before your code gets merged, &lt;strong&gt;maintainers need to understand what you’ve done and why&lt;/strong&gt;.  &lt;/p&gt;

&lt;p&gt;That’s where &lt;strong&gt;clear commit messages&lt;/strong&gt; and &lt;strong&gt;well-structured pull requests (PRs)&lt;/strong&gt; come in.  &lt;/p&gt;

&lt;p&gt;In this post, we’ll walk through:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Writing clean commit messages
&lt;/li&gt;
&lt;li&gt;Creating pull requests that maintainers love
&lt;/li&gt;
&lt;li&gt;A ready-to-use PR template for your future contributions
&lt;/li&gt;
&lt;/ol&gt;


&lt;h2&gt;
  
  
  1️⃣ Writing a Good Commit Message
&lt;/h2&gt;

&lt;p&gt;A good commit message should be &lt;strong&gt;short, descriptive, and consistent&lt;/strong&gt;.  &lt;/p&gt;
&lt;h3&gt;
  
  
  ✅ Commit Message Format
&lt;/h3&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;type&amp;gt;: &amp;lt;short description&amp;gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;Common commit types&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;feat&lt;/code&gt; → new feature
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;fix&lt;/code&gt; → bug fix
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;docs&lt;/code&gt; → documentation change
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;style&lt;/code&gt; → formatting or styling changes
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;refactor&lt;/code&gt; → code improvements without changing behavior
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;test&lt;/code&gt; → adding or updating tests
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;chore&lt;/code&gt; → maintenance tasks
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
  
  
  💡 Examples
&lt;/h3&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;fix: resolve crash when loading user profile
docs: update README with setup instructions
feat: add dark mode to settings page
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;If you need to explain more:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;feat: add search functionality to events list

- Implemented SearchBar component with debounce
- Updated EventList component to filter results in real-time
- Added unit tests for search feature
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Pro tips:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Keep the first line under &lt;strong&gt;50 characters&lt;/strong&gt;.
&lt;/li&gt;
&lt;li&gt;Use &lt;strong&gt;present tense&lt;/strong&gt; (“add” not “added”).
&lt;/li&gt;
&lt;li&gt;Commit &lt;strong&gt;one logical change per commit&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  2️⃣ Creating a Pull Request (PR)
&lt;/h2&gt;

&lt;p&gt;A Pull Request is how you propose your changes to the main project.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Steps to create one:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Fork&lt;/strong&gt; the repository.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Clone&lt;/strong&gt; it locally:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;   git clone https://github.com/&amp;lt;your-username&amp;gt;/&amp;lt;repo-name&amp;gt;.git
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Create a new branch&lt;/strong&gt; (don’t work on &lt;code&gt;main&lt;/code&gt;):
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;   git checkout &lt;span class="nt"&gt;-b&lt;/span&gt; feat/search-bar
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Make changes&lt;/strong&gt; → commit:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;   git add &lt;span class="nb"&gt;.&lt;/span&gt;
   git commit &lt;span class="nt"&gt;-m&lt;/span&gt; &lt;span class="s2"&gt;"feat: add search functionality to events list"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Push your branch&lt;/strong&gt;:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;   git push origin feat/search-bar
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;On GitHub, click &lt;strong&gt;"Compare &amp;amp; Pull Request"&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  3️⃣ Writing a Great PR Description
&lt;/h2&gt;

&lt;p&gt;A PR description should &lt;strong&gt;explain what you did, why, and how to test it&lt;/strong&gt;.  &lt;/p&gt;

&lt;p&gt;Here’s a &lt;strong&gt;PR template&lt;/strong&gt; you can use:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;## Description
Briefly explain the changes.

## Changes
- List key changes in bullet points.

## Screenshots / Demo (if applicable)
[Add screenshots or GIFs]

## Related Issue
Closes #&amp;lt;issue-number&amp;gt; (if fixing a bug or feature request)

## Checklist
- [ ] Code follows project style guidelines
- [ ] Tested locally
- [ ] Documentation updated if needed
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  📌 Example PR
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;## Description
Added a search bar to the Events page to filter events by name in real-time.

## Changes
- Added SearchBar component with debounce to prevent excessive re-rendering
- Updated EventList component to filter events list
- Added unit tests for the search functionality

## Related Issue
Closes #45

## Checklist
- [x] Code follows project style guidelines
- [x] Tested locally
- [ ] Documentation updated
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  🎯 Final Thoughts
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Small commits&lt;/strong&gt; = easier code review.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Clear PRs&lt;/strong&gt; = faster approval.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Consistent format&lt;/strong&gt; = happier maintainers.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Next time you contribute to open source, follow this guide — you’ll make life easier for both yourself and the maintainers. 🚀  &lt;/p&gt;




&lt;p&gt;If you found this helpful, &lt;strong&gt;save it for later&lt;/strong&gt; and share it with someone starting their open-source journey! 💙  &lt;/p&gt;

</description>
      <category>opensource</category>
      <category>beginners</category>
      <category>github</category>
      <category>community</category>
    </item>
    <item>
      <title>VIM is gem!!</title>
      <dc:creator>Arun Krish</dc:creator>
      <pubDate>Sat, 15 Mar 2025 20:04:35 +0000</pubDate>
      <link>https://dev.to/arunkrish11/vim-is-gem-3kh7</link>
      <guid>https://dev.to/arunkrish11/vim-is-gem-3kh7</guid>
      <description>&lt;p&gt;What is VIM? Basically, VIM will help you to code faster than you think, by using some commands. If you learn VIM, it's an advantage while competing with others, as well as it will increase your productivity. Yeah, you will not need a mouse anymore. If you don't get it, don't worry. We will figure it out in this blog!&lt;/p&gt;

&lt;p&gt;Official site of &lt;a href="https://www.vim.org/" rel="noopener noreferrer"&gt;VIM&lt;/a&gt;&lt;br&gt;
VIM git &lt;a href="https://github.com/VSCodeVim/Vim" rel="noopener noreferrer"&gt;repo&lt;/a&gt;&lt;br&gt;
Here you can &lt;a href="https://www.vim.org/download.php" rel="noopener noreferrer"&gt;download&lt;/a&gt;&lt;br&gt;
Or refer some YouTube videos&lt;/p&gt;
&lt;h2&gt;
  
  
  Download VIM on Linux
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo apt update
sudo apt install vim
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Open your terminal to check vim installed or not.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;vim
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can see something like this in your terminal. To exit, type &lt;code&gt;:q&lt;/code&gt;&lt;br&gt;
and enter.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdgn192x05v5tw7u6gai6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdgn192x05v5tw7u6gai6.png" alt="Terminal Output" width="800" height="494"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Use VIM in VScode
&lt;/h2&gt;

&lt;p&gt;Add an extension named Vim to your VS code.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqjdq246ilufhxmaq0xsw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqjdq246ilufhxmaq0xsw.png" alt="VIM extension" width="780" height="208"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Here we start
&lt;/h2&gt;

&lt;p&gt;After that, create a file. You can notice that the cursor has become wider. Also, you can notice the VIM modes in the bottom left of your VS code (Here is NORMAL).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F71ipbetmbkvyk9wawium.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F71ipbetmbkvyk9wawium.png" alt="Wider cursur" width="505" height="250"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fohf22o3gqavi66uqbcmz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fohf22o3gqavi66uqbcmz.png" alt="VIM Mode in VS code" width="514" height="284"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;While pressing &lt;code&gt;i&lt;/code&gt; you can see the mode become Insert and the cursor become smaller. Now you are in insert mode. Type anything (actually your codes) and press &lt;code&gt;esc&lt;/code&gt; so you can escape from the insert mode to normal mode.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpplul8r5stfcwhd7umqu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpplul8r5stfcwhd7umqu.png" alt="Using VIM" width="505" height="250"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fogwqnyj4k4r1jlyg8hqk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fogwqnyj4k4r1jlyg8hqk.png" alt="Insert mode" width="505" height="250"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Commands starting with &lt;code&gt;:&lt;/code&gt; symbols you can see in the bottom left of your VS Code. Type &lt;code&gt;:q&lt;/code&gt; to save your code written. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6u6sibo7xhpphsgu2c4h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6u6sibo7xhpphsgu2c4h.png" alt="Command with symbols" width="505" height="250"&gt;&lt;/a&gt;&lt;br&gt;
Below are some codes; play with them and learn more...&lt;/p&gt;

&lt;p&gt;Here are the important commands to master VIM.&lt;/p&gt;

&lt;h2&gt;
  
  
  Basic Navigation
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;h → Move left
l → Move right
j → Move down
k → Move up
w → Move to the next word
b → Move to the previous word
0 → Move to the beginning of the line
^ → Move to the first non-whitespace character
$ → Move to the end of the line
gg → Go to the beginning of the file
G → Go to the end of the file
:n → Jump to line n (:10 goes to line 10)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Insert Mode
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;i → Insert before the cursor
I → Insert at the beginning of the line
a → Append after the cursor
A → Append at the end of the line
o → Open a new line below
O → Open a new line above
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Editing
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;x → Delete the character under the cursor
dw → Delete a word
dd → Delete a line
D → Delete from cursor to the end of the line
yy → Copy (yank) a line
yw → Yank a word
p → Paste after the cursor
P → Paste before the cursor
u → Undo
Ctrl + r → Redo
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Searching &amp;amp; Replacing
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/word → Search for "word"
n → Jump to the next occurrence
N → Jump to the previous occurrence
:%s/old/new/g → Replace all occurrences of "old" with "new"
:%s/old/new/gc → Replace with confirmation
Saving &amp;amp; Exiting
:w → Save
:q → Quit
:wq or :x → Save and quit
:q! → Quit without saving
ZZ → Save and exit (shortcut)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Visual Mode
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;v → Start visual mode (select text character by character)
V → Start line-wise visual mode
Ctrl + v → Start block visual mode
y → Yank (copy) selected text
d → Delete selected text
&amp;gt; → Indent selected text
&amp;lt; → Un-indent selected text
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Windows &amp;amp; Tabs
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;:split or :sp → Split window horizontally
:vsplit or :vsp → Split window vertically
Ctrl + w + w → Switch between windows
:tabnew → Open a new tab
gt → Switch to the next tab
gT → Switch to the previous tab
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Thank you! Happy coding...&lt;/em&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>tutorial</category>
      <category>vim</category>
      <category>code</category>
    </item>
    <item>
      <title>How do I revert a merged pull request?</title>
      <dc:creator>Arun Krish</dc:creator>
      <pubDate>Sat, 18 Jan 2025 07:50:39 +0000</pubDate>
      <link>https://dev.to/arunkrish11/how-do-i-revert-a-merged-pull-request-2ma5</link>
      <guid>https://dev.to/arunkrish11/how-do-i-revert-a-merged-pull-request-2ma5</guid>
      <description>&lt;p&gt;Here I am discussing how to revert a merged pull request and again push the branch. I am sharing this because I faced this issue while developing something...&lt;/p&gt;

&lt;p&gt;Keep in mind that the working branch is "master" and the feature branch is "navbar".&lt;/p&gt;

&lt;p&gt;If you don't know how to push your code into github, please visit my previous post &lt;a href="https://dev.to/arunkrish11/how-to-push-your-code-into-github-552m"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here we go...&lt;/p&gt;

&lt;p&gt;The problem 1: I created a pull request in github and merged. But that isn't the actual code, or it's not working in the master branch after merging. &lt;/p&gt;

&lt;p&gt;The merged file was navbar.&lt;/p&gt;

&lt;p&gt;The solution: Let's checkout branch into master and pull the code from github, then check git log.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git checkout master
git pull origin master
git log
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftyqzuwwdopwrvmvx92ub.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftyqzuwwdopwrvmvx92ub.png" alt="Git terminal" width="800" height="315"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can see a commit message like "merge pull request." &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi3jw5mdug9aelfg6nh8n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi3jw5mdug9aelfg6nh8n.png" alt="You can see the merge commit message and commit id" width="800" height="273"&gt;&lt;/a&gt;&lt;br&gt;
You can revert the commit using that commitId and a git command like&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git revert -m 1 714013e1e7dc98787b73b9da197994b770d0c1d7

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can write the commit message for reason for reverting in the opening window and press &lt;code&gt;ctrl x&lt;/code&gt;. Then push the code into github.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git push origin master
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now you reverted your pull request successfully. You can see that your merged files are removed now and a new commit message. Eg: here navbar file removed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn4ltmikm70m08mpmaet9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn4ltmikm70m08mpmaet9.png" alt="Navbar removed, you can see the commit message in the repo" width="800" height="212"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The problem 2: What What happens if you want to work in the navbar branch and create a new pull request again? &lt;/p&gt;

&lt;p&gt;The solution: checkout into the branch navbar and work in the navbar branch and create a pull request.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git checkout navbar
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After editing the file, add, commit and push.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgn1m4cmmd0pjfybcxwhi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgn1m4cmmd0pjfybcxwhi.png" alt="git terminal" width="797" height="168"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git add .
git commit -m "navbar edited"
git push origin navbar
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Go to GitHub and select the navbar branch.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyrext5xtvse6m6ndojk8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyrext5xtvse6m6ndojk8.png" alt="Git hub selecting navbar branch" width="543" height="78"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv4dauoob3nc7ry9fgls3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv4dauoob3nc7ry9fgls3.png" alt="Creating pull request by clicking contribute button" width="800" height="340"&gt;&lt;/a&gt;&lt;br&gt;
You can see a contribute button; by pressing that, you can create a new pull request.&lt;/p&gt;

&lt;p&gt;If there aren't any conflicts, it can merge. If there are any conflicts, first of all, go to your IDE checkout to the master branch and pull the code from github. Then checkout to branch navbar, then merge master into navbar.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git chekcout master
git pull origin master
git checkout navbar
git merge master
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now you can see the conflicts and solve the conflicts in the merge editor (hoping you are using vs code), select the incoming code. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8l4bpu7gkcbmakiz52km.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8l4bpu7gkcbmakiz52km.png" alt="VS Code Merge Editor, select incoming code" width="800" height="404"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Complete the merge, add, commit, and create a pull request once again. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzfzqekgxfsh5e1e1gt52.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzfzqekgxfsh5e1e1gt52.png" alt="Git terminal" width="800" height="288"&gt;&lt;/a&gt;&lt;br&gt;
Now you can create a pull request for the navbar branch by selecting the navbar branch, then clicking the contribute button and opening the pull request, create pull request.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F83m0vl3siq8wwejqur6b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F83m0vl3siq8wwejqur6b.png" alt="GitHub conflict solved" width="800" height="441"&gt;&lt;/a&gt;&lt;br&gt;
You can see that conflicts are solved.&lt;/p&gt;

&lt;p&gt;Thankyou&lt;br&gt;
Happy coding:)&lt;/p&gt;

</description>
      <category>git</category>
      <category>github</category>
      <category>webdev</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>How to push your code into github.</title>
      <dc:creator>Arun Krish</dc:creator>
      <pubDate>Sat, 18 Jan 2025 06:43:36 +0000</pubDate>
      <link>https://dev.to/arunkrish11/how-to-push-your-code-into-github-552m</link>
      <guid>https://dev.to/arunkrish11/how-to-push-your-code-into-github-552m</guid>
      <description>&lt;p&gt;First of all, after you cloned a repo or for working on a new feature, its better to create a new branch and start working on that.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git branch branch-name
git branch navbar
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Edit your file and add; commit your changes.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs9v0jfbth0vdmlte2gi6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs9v0jfbth0vdmlte2gi6.png" alt="git terminal" width="780" height="157"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git add .
git commit -m "commit message"
git commit -m "navbar added"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For every push, you want to ensure that your codes are committed. Now you can push your code to github and create a pull request.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git push origin navbar
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Note: If your github account is not connected to your IDE, you need to give the username as well as password of your github account. Your password while pushing is not your password for your github account. For that, you need to create a PAT: personal access token.&lt;/p&gt;

&lt;p&gt;It takes a little time to push. After pushing open github, you can see a button showing to create a pull request.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flwsu06u1yve2fw7m4dzx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flwsu06u1yve2fw7m4dzx.png" alt="GitHub pull request button" width="800" height="78"&gt;&lt;/a&gt;&lt;br&gt;
By clicking "compare and pull request," you will go to the next page, where you can give a title and description for your pull request and press "create a pull request.". Congratulations! You created a new pull request.&lt;/p&gt;

&lt;p&gt;You can see if there are any conflicts or not.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F22gphbsalv33uqjywsa6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F22gphbsalv33uqjywsa6.png" alt="GitHub" width="800" height="142"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thank you&lt;br&gt;
Happy coding:)&lt;/p&gt;

</description>
    </item>
    <item>
      <title>TailwindCSS The Great!</title>
      <dc:creator>Arun Krish</dc:creator>
      <pubDate>Sat, 21 Dec 2024 18:03:28 +0000</pubDate>
      <link>https://dev.to/arunkrish11/tailwindcss-the-great-6m3</link>
      <guid>https://dev.to/arunkrish11/tailwindcss-the-great-6m3</guid>
      <description>&lt;p&gt;If you are a web developer and usually use CSS for styling, here is your game changer.&lt;/p&gt;

&lt;p&gt;Tailwind CSS is a highly customizable, utility-first CSS framework used for designing modern websites and applications. Unlike traditional CSS frameworks like Bootstrap, which come with predefined components and styles, Tailwind focuses on giving developers utility classes to build custom designs directly in &lt;br&gt;
their HTML.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://tailwindcss.com/docs/installation" rel="noopener noreferrer"&gt;How to install TailwindCSS&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://tailwindcss.com/docs/configuration" rel="noopener noreferrer"&gt;Here you can start learning.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://youtu.be/aSlK3GhRuXA?si=UuyT1GrRzDQrSZAI" rel="noopener noreferrer"&gt;The best video I found for more knowledge&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Key Features of Tailwind CSS:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Utility-First Approach:&lt;br&gt;
Provides small, single-purpose classes (e.g., text-center, bg-blue-500, p-4) that can be combined to create custom designs.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Customization:&lt;br&gt;
You can customize every aspect of the framework (colors, spacing, breakpoints, etc.) through a tailwind.config.js file.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Responsive Design:&lt;br&gt;
Built-in support for responsive design using prefix-based classes like sm:, md:, lg:, etc.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;No Predefined Components:&lt;br&gt;
Instead of providing ready-made components, it focuses on giving the building blocks to create your components.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Dark Mode:&lt;br&gt;
Supports dark mode out of the box with dark: bg-black.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Performance Optimizations:&lt;br&gt;
Removes unused styles (via tools like PurgeCSS or built-in optimization in newer versions) to make production files small and fast.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Consistency and Maintainability:&lt;br&gt;
Helps maintain consistent designs by encouraging the use of utility classes instead of writing custom CSS repeatedly.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>tailwindcss</category>
      <category>webdev</category>
      <category>beginners</category>
      <category>frontend</category>
    </item>
    <item>
      <title>CRUD in Firebase</title>
      <dc:creator>Arun Krish</dc:creator>
      <pubDate>Sun, 07 Jul 2024 10:44:40 +0000</pubDate>
      <link>https://dev.to/arunkrish11/crud-in-firebase-5hk3</link>
      <guid>https://dev.to/arunkrish11/crud-in-firebase-5hk3</guid>
      <description>&lt;p&gt;CRUD operation in Firebase using react and javascript&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
        // Read
        db.collection('products').get().then(resposne=&amp;gt;{
          resposne.forEach((object)=&amp;gt;{
            console.log(object.data(),object.id);
          })
        })

        // Create
        db.collection('products').add({
          name: 'Laptop',
          type: 'Electronics',
          price: 50000
        }).then(()=&amp;gt;{
          console.log('Added');
        })

        // Delete
        db.collection('products').doc('Q4tjiYSC05MjYG6pQBIQ').delete().then(()=&amp;gt;{
          console.log('Deleted');
        })

        // Update
        db.collection('products').doc('BDgu0r6ECRtyUKxxkxcs').update({
          name: 'Laptop',
          type: 'Electronics',
          price: 50
        }).then(()=&amp;gt;{
          console.log('Updated');
        })

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>firebase</category>
      <category>reactjsdevelopment</category>
      <category>react</category>
      <category>webdev</category>
    </item>
    <item>
      <title>How to host your code in github?</title>
      <dc:creator>Arun Krish</dc:creator>
      <pubDate>Thu, 16 May 2024 12:34:21 +0000</pubDate>
      <link>https://dev.to/arunkrish11/git-for-newbie-part-1-1l8b</link>
      <guid>https://dev.to/arunkrish11/git-for-newbie-part-1-1l8b</guid>
      <description>&lt;h2&gt;
  
  
  &lt;strong&gt;HOW TO ADD ANY FILES INTO HOSTING PLATFORMS (GitHub,GitLab,etc)&lt;/strong&gt;
&lt;/h2&gt;

&lt;h2&gt;
  
  
  About this article
&lt;/h2&gt;

&lt;p&gt;This article show us how to add your program file into hosting platform like GitHub, GitLab, etc. We do this by using git version control tool. Git tool is different from GitHub and GitLab.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://git-scm.com/" rel="noopener noreferrer"&gt;Git&lt;/a&gt; is a distributed version control system that tracks changes in any set of computer files, usually used for coordinating work among programmers who are collaboratively developing source code during software development. Its goals include speed, data integrity, and support for distributed, non-linear workflows (thousands of parallel branches running on different computers).&lt;/p&gt;

&lt;p&gt;Follow the following steps to upload your file into hosting platforms.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;First of all download git from &lt;a href="https://git-scm.com/downloads" rel="noopener noreferrer"&gt;here&lt;/a&gt;. Git is inbuilt software for Linux, to conform that type &lt;code&gt;git --version&lt;/code&gt; in terminal.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Open the git bash on your windows, mac and type &lt;code&gt;git --version&lt;/code&gt; to conform that git downloaded successfully. I will use the word terminal, for windows and mac users it same as git bash. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose your file (the file you want to upload) by typing &lt;code&gt;cd file_name, dir&lt;/code&gt;. &lt;code&gt;cd file_name&lt;/code&gt; for choose folder and &lt;code&gt;dir&lt;/code&gt; for showing all files in current folder. This command varies with OS.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Type &lt;code&gt;git init&lt;/code&gt; for add local git file (.git) into your system. You can locate this file by entering into the folder that you located early and turn on hidden files. You can see a .git file in this folder.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Make necessary edit in the programming file and type in terminal  &lt;code&gt;git status&lt;/code&gt; to conform file edited successfully and follow below commands.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;git add — all&lt;/code&gt; for choose all the coded file.&lt;br&gt;
&lt;code&gt;git commit -m “new file added”&lt;/code&gt; for locally save the code with a message. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;git remote&lt;/code&gt;&lt;br&gt;
&lt;code&gt;git remote add origin https://github.com/ARUNKRISH11/Sample&lt;/code&gt; &lt;br&gt;
Adding git repo link (for each project first time only need this line of command). The link will get by creating new repository in GitHub or GitLab. For creating new repository in GitHub follow the instructions in the below image named 'Create new repository in your GitHub.'&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;To see the remote name and link used previously use &lt;code&gt;git remote&lt;/code&gt; or &lt;code&gt;git remote -v&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;git push origin master&lt;/code&gt; to uploading the file into your GitHub repository.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;After that you need to enter hosting platform username and token ID “ARUNKRISH11, ghp_G3cketo8dqEKrp6ubZh3h5GYs5vClDF”&lt;br&gt;
You can generate token id in GitHub by follow the instructions in the below image named 'Create new repository in your GitHub'&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;All commands used in this post&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git --version
cd file_name
dir
git init
git status
git add --all
git commit -m "new file added"
git remote
git remote add origin https://github.com/ARUNKRISH11/Sample
git push origin master
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Steps done in terminal or git bash&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj531ckw7wa4gqwzcmxr3.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj531ckw7wa4gqwzcmxr3.jpg" alt="Steps done in terminal or git bash" width="800" height="548"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Create new repository in your GitHub.&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvty97duz5edtgs5g7c8t.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvty97duz5edtgs5g7c8t.jpg" alt="Create new repository in your GitHub." width="800" height="548"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Generate GitHub personal access token ID&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5ibkaqgqov2qt3anb560.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5ibkaqgqov2qt3anb560.jpg" alt="Generate GitHub personal access token ID" width="720" height="479"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Thank you for taking the time to read through this Git explanation post! I hope it has clarified some of the key concepts and features of Git for you. Whether you're a beginner just starting out or an experienced developer looking to brush up on your skills, Git is an invaluable tool for version control and collaboration.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;A big shoutout to the awesome developer community here for always fostering an environment of learning and growth. Your questions, feedback, and contributions are what make this community so special.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Feel free to share your thoughts, ask questions, or provide additional tips in the comments below. Let's keep the conversation going and continue to learn from each other!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Happy coding! 🚀&lt;/em&gt;&lt;/p&gt;

</description>
      <category>git</category>
      <category>productivity</category>
      <category>github</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
