<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Senali on Medium]]></title>
        <description><![CDATA[Stories by Senali on Medium]]></description>
        <link>https://medium.com/@senali?source=rss-88dd4e3f8521------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*R99bFkDNMpGfivFIJESFLg.png</url>
            <title>Stories by Senali on Medium</title>
            <link>https://medium.com/@senali?source=rss-88dd4e3f8521------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sun, 07 Jun 2026 03:29:03 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@senali/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Introduction to Machine Learning…]]></title>
            <link>https://medium.com/@senali/introduction-to-machine-learning-5aab7602d14c?source=rss-88dd4e3f8521------2</link>
            <guid isPermaLink="false">https://medium.com/p/5aab7602d14c</guid>
            <category><![CDATA[data-science]]></category>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[predictive-modeling]]></category>
            <category><![CDATA[machine-learning]]></category>
            <category><![CDATA[artificial-intelligence]]></category>
            <dc:creator><![CDATA[Senali]]></dc:creator>
            <pubDate>Tue, 03 Dec 2024 17:36:53 GMT</pubDate>
            <atom:updated>2024-12-03T17:42:58.647Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*yIEPNmq9hDa_IMhxYWd6ZQ.jpeg" /></figure><p>Machine Learning…</p><p>Let’s try to identify what is machine learning without deep definitions. Just by through a simply example.</p><p>We provide inputs and outputs to the system, and the system tries to figure out how to derive the output from the input by learning patterns in the data.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*SEuGfszOfZ7NXvDouAOWpQ.png" /><figcaption>Model Training</figcaption></figure><p>Here let’s thing we are going to predict the car prices. We collect some data data set with description of cars and prices. Then we learn the data set by showing car and their prices. This process is called training. When the training is complete. We can use this created model to predict the car prices that we don’t know yet.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4jRj34uMT82C-5SzfbHfDw.png" /><figcaption>Prediction</figcaption></figure><h3>How does machine learning differ from traditional software systems?</h3><p>In machine learning, we provide the system with input and output data, and the process generates a model (program) capable of mapping inputs to outputs. In traditional systems, we manually identify patterns in the data and then write code to transform the data into the desired outcome based on those patterns.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*CquXh_QdHZUjhMask0dDvg.png" /><figcaption>Traditional software system vs system based on machine learning</figcaption></figure><p>In traditional software engineering, we handle all the tasks ourselves, while in machine learning, we rely on the machine to discover patterns.</p><h3>Machine learning vs. rule-based systems</h3><p>In <strong>rule base system spam</strong> detection, you might start by observing patterns manually. For example, if many spam emails come from promotions@online.com or contain &quot;buy now 50% off,&quot; you create rules like:</p><p><strong>Rule 1</strong>: If sender = promotions@online.com, mark as spam.</p><p><strong>Rule 2</strong>: If title contains &quot;buy now 50% off&quot;, mark as spam.</p><p>Initially, these rules work, but as spammers change tactics, new spam starts bypassing them. For instance, emails with the word “deposit” in the body might appear, requiring another rule:</p><p><strong>Rule 3</strong>: If body contains &quot;deposit&quot;, mark as spam.</p><p>Over time, adding rules like these becomes unsustainable, as exceptions arise (e.g., “deposit” could appear in legitimate emails), making the system complex and harder to maintain.</p><p>With <strong>machine learning</strong>, instead of writing rules manually, you train a model using labeled data. For example:</p><p><strong>1. Features</strong>:<br>You describe each email using characteristics like:</p><p>- Length of title &gt; 10? (True/False)<br>- Body contains “deposit”? (True/False)<br>- Sender is promotions@online.com? (True/False)</p><p><strong>Subject</strong>: &quot;Waiting for your reply&quot;<br><strong>From</strong>: promotions@test.com<br><strong>Body</strong>: &quot;The advance-fee deposit text&quot;<br>Features could be: [1, 1, 0, 0, 1, 1] (1 = true, 0 = false).</p><p><strong>2. Label</strong>:<br>This email is spam (1), so the model associates this feature vector with spam.</p><p><strong>3. Learning</strong>:<br>The model is trained on thousands of such examples to find patterns in the features that correlate with spam or not spam.</p><p><strong>4. Adaptability</strong>:<br>When new patterns emerge (e.g., new keywords or sender domains), you update the training data with examples, retrain the model, and it adapts without needing manual rule updates.</p><p>Thank You!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=5aab7602d14c" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[What is the difference between Docker Runtime and Docker Engine]]></title>
            <link>https://medium.com/@senali/what-is-the-difference-between-docker-runtime-and-docker-engine-235b25ae9a73?source=rss-88dd4e3f8521------2</link>
            <guid isPermaLink="false">https://medium.com/p/235b25ae9a73</guid>
            <category><![CDATA[docker-engine]]></category>
            <category><![CDATA[oci]]></category>
            <category><![CDATA[container-runtime]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[docker]]></category>
            <dc:creator><![CDATA[Senali]]></dc:creator>
            <pubDate>Sun, 28 Jan 2024 17:42:14 GMT</pubDate>
            <atom:updated>2024-01-28T17:42:14.236Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*HjmjGCVN1oRcjn9QPycIKg.jpeg" /></figure><h3>Docker Engine</h3><p>Docker Engine is the core component of the Docker platform. It provides the runtime environment for containers, allowing users to build, run, and manage containerized applications.</p><p>Docker Engine acts as a client-server application.</p><p><strong>Docker Daemon:</strong> A server with a long-running daemon process dockerd. This is a background process that manages Docker containers on a host machine. It is responsible for building, running, and monitoring containers.</p><p><strong>API: </strong>REST APIs which specify interfaces that programs can use to talk to and instruct the Docker daemon.</p><p><strong>Docker CLI:</strong> A command line interface (CLI) client docker. Docker CLI is used by users to interact with the Docker Daemon. It provides commands for managing images, containers, networks, and other Docker-related resources.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*2tjpTsAUCzKRL3cfSnB8KA.png" /></figure><h3>Docker Runtime</h3><p>The Docker Runtime, sometimes referred to as the container runtime, is the component responsible for executing and managing containers. It is a part of the Docker Engine.</p><p><strong>Default Runtime:</strong> Historically, Docker has used its own container runtime as the default, known as “runc.” Runc is an open-source command-line tool for spawning and running containers according to the Open Container Initiative (OCI) specification.</p><p><strong>Custom Runtimes:</strong> Docker allows users to specify alternative container runtimes, enabling the use of third-party runtimes like containerd or other implementations that adhere to the OCI specification.</p><p>Docker Engine comprises both the Docker Daemon (dockerd) and the Docker CLI (docker). The Docker Runtime, as a subset of the Docker Engine, is responsible for actually running containers. The default runtime historically used by Docker is &quot;runc,&quot; but users can opt for alternative runtimes like containerd if they choose. This modular architecture provides flexibility and compatibility within the container ecosystem.</p><h3>What is OCI</h3><p>The <strong>Open Container Initiative</strong> is an open governance structure for the express purpose of creating open industry standards around container formats and runtimes.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=235b25ae9a73" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[What is Docker Desktop and Docker Engine in Linux?]]></title>
            <link>https://medium.com/@senali/what-docker-desktop-and-docker-engine-in-linux-2ed9f140940?source=rss-88dd4e3f8521------2</link>
            <guid isPermaLink="false">https://medium.com/p/2ed9f140940</guid>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[docker]]></category>
            <category><![CDATA[docker-desktop]]></category>
            <category><![CDATA[docker-compose]]></category>
            <category><![CDATA[docker-engine]]></category>
            <dc:creator><![CDATA[Senali]]></dc:creator>
            <pubDate>Mon, 29 May 2023 19:41:50 GMT</pubDate>
            <atom:updated>2024-09-25T18:32:15.278Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/770/1*Lz_A9oxbKQ8aBbD6djdwkw.png" /></figure><h3>Docker Desktop</h3><p>Docker desktop enabled to build and share containerized applications and microservices in environments Mac, Linux, or Windows. Just a one click application can be install. It provides GUI to manage containers, applications, and images directly from your machine.</p><h3>What includes in Docker Desktop</h3><ul><li>Docker Engine</li><li>Docker CLI client</li><li>Docker Buildx</li><li>Extensions</li><li>Docker Compose</li><li>Docker Content Trust</li><li>Kubernetes</li><li>Credential Helper</li></ul><h3>How to install Docker Desktop?</h3><p>Docker desktop available for mac, windows and linux. Here I’m explain how to install docker desktop in ubuntu.</p><h4>Prerequisites</h4><ol><li>For non-Gnome Desktop environments, gnome-terminal must be installed.</li></ol><blockquote>sudo apt install gnome-terminal</blockquote><p>2. Uninstall the tech preview or beta version of Docker Desktop for Linux</p><blockquote>sudo apt remove docker-desktop</blockquote><p>3. For a complete cleanup, remove configuration and data files</p><blockquote>rm -r $HOME/.docker/desktop<br>sudo rm /usr/local/bin/com.docker.cli<br>sudo apt purge docker-desktop</blockquote><h4>Install Docker Desktop</h4><ol><li>Download latest <a href="https://desktop.docker.com/linux/main/amd64/docker-desktop-4.19.0-amd64.deb?utm_source=docker&amp;utm_medium=webreferral&amp;utm_campaign=docs-driven-download-linux-amd64">DEB package</a>.</li><li>Install the package with apt as follows.</li></ol><blockquote>sudo apt-get update<br>sudo apt-get install ./docker-desktop-&lt;version&gt;-&lt;arch&gt;.deb</blockquote><h4>Check the versions of these binaries</h4><blockquote>docker compose version<br>docker — version<br>docker version</blockquote><p>Docker Desktop installation complete now. Search docker desktop and open it.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*B8pJP9Tu7_i3V36CpT6Kyw.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*FAYJ7pf4OiWpAOmgcQcxHA.png" /></figure><h3>Docker Engine</h3><p>Docker Engine is an open source containerization technology for building and containerizing your applications. The CLI uses Docker APIs to control or interact with the Docker daemon through scripting or direct CLI commands.</p><h3>Install Docker Engine on Ubuntu</h3><p>Docker Engine can be install in different ways. Here we install using the apt repository.</p><p>Refer: <a href="https://medium.com/@senali/how-to-install-docker-engine-on-ubuntu-20-04-4566d3393bbd">How to install Docker Engine on Ubuntu 20.04</a></p><h3>Difference between Docker Desktop and Docker Engine</h3><p>Docker Engine is the fundamental containerization engine that runs on servers and manages containers, while Docker Desktop is a developer-focused tool that includes Docker Engine along with additional features to simplify the development and testing of containerized applications on local machines.</p><p>Docker Desktop for stores containers and images in an isolated storage location within a VM and offers controls to restrict its resources. Due to dedicated storage Docker Desktop prevents from interfering with a Docker Engine installation on the same machine.</p><p>So we can install Docker Desktop for Linux and Docker Engine on same machine side by side. Also both Docker Desktop and Docker Engine possible to run simultaneously. But there may be situations where running both at the same time can cause issues. So recommend to stop Docker Engine while using Docker Desktop to prevent the conflicts.</p><p>Stop the Docker Engine service</p><blockquote>sudo systemctl stop docker docker.socket containerd</blockquote><h4>Switch between Docker Desktop and Docker Engine</h4><p>View what contexts are available.</p><blockquote>docker context ls</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*k3pfSWO0oOTihSNHvSQ66Q.png" /></figure><p>Switch between the Docker Desktop and Docker Engine</p><pre>$ docker context use default<br><br>default<br>Current context is now &quot;default&quot;<br><br>$ docker context use desktop-linux<br><br>desktop-linux<br>Current context is now &quot;desktop-linux&quot;</pre><p>Thank You!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2ed9f140940" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to install Docker Engine on Ubuntu 20.04]]></title>
            <link>https://medium.com/@senali/how-to-install-docker-engine-on-ubuntu-20-04-4566d3393bbd?source=rss-88dd4e3f8521------2</link>
            <guid isPermaLink="false">https://medium.com/p/4566d3393bbd</guid>
            <category><![CDATA[docker-image]]></category>
            <category><![CDATA[docker-compose]]></category>
            <category><![CDATA[docker]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[install-docker]]></category>
            <dc:creator><![CDATA[Senali]]></dc:creator>
            <pubDate>Sun, 07 May 2023 09:55:43 GMT</pubDate>
            <atom:updated>2023-05-07T09:55:43.370Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/600/1*TdcgVRjPriz3kqOC7kF1kQ.png" /></figure><p>There is different ways to install docker on ubuntu. What method should I will use to install docker?? It will depends on your needs.</p><ol><li>Docker Engine comes bundled with <a href="https://docs.docker.com/desktop/install/linux-install/">Docker Desktop for Linux</a>.</li><li>Set up and install Docker Engine from <a href="https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository">Docker’s </a><a href="https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository">apt repository</a>.</li><li><a href="https://docs.docker.com/engine/install/ubuntu/#install-from-a-package">Install it manually</a> and manage upgrades manually.</li><li>Use a <a href="https://docs.docker.com/engine/install/ubuntu/#install-using-the-convenience-script">convenience scripts</a>. Only recommended for testing and development environments.</li></ol><p>Here I will use the second method. Use Docker apt repository for installation.</p><ol><li>Setup docker repository</li></ol><p>i. Update the apt package</p><pre>sudo apt-get update</pre><p>ii. Install packages to allow apt to use a repository over https</p><pre>sudo apt-get install ca-certificates curl gnupg</pre><p>iii. Add Docker’s official GPG key</p><pre>sudo install -m 0755 -d /etc/apt/keyrings<br>curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg<br>sudo chmod a+r /etc/apt/keyrings/docker.gpg</pre><p>iv. Set up the repository</p><pre>echo \<br>  &quot;deb [arch=&quot;$(dpkg --print-architecture)&quot; signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \<br>  &quot;$(. /etc/os-release &amp;&amp; echo &quot;$VERSION_CODENAME&quot;)&quot; stable&quot; | \<br>  sudo tee /etc/apt/sources.list.d/docker.list &gt; /dev/null</pre><p>2. Install Docker Engine</p><p>i. Update the apt package</p><pre>sudo apt-get update</pre><p>ii. Install Docker Engine, containerd, and Docker Compose</p><pre>sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin</pre><p>iii. Verify the Docker Engine installation</p><pre>sudo docker run hello-world</pre><p>After successfully installation you can see following result. When verify it using run “hello-world” docker image.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*_8hqj6CEQqQeuebCtTkWBA.png" /></figure><h3><strong>Reference</strong></h3><p><a href="https://docs.docker.com/engine/install/ubuntu/">Docker Doc</a></p><p>Thank You!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=4566d3393bbd" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Introduction to Docker]]></title>
            <link>https://medium.com/@senali/introduction-to-docker-c159e5b102c4?source=rss-88dd4e3f8521------2</link>
            <guid isPermaLink="false">https://medium.com/p/c159e5b102c4</guid>
            <category><![CDATA[dockerfiles]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[docker-compose]]></category>
            <category><![CDATA[cloud-computing]]></category>
            <category><![CDATA[docker]]></category>
            <dc:creator><![CDATA[Senali]]></dc:creator>
            <pubDate>Tue, 11 Apr 2023 16:21:16 GMT</pubDate>
            <atom:updated>2023-04-11T16:21:16.789Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/298/1*MyCAx_aYxt3GkBqGNplOPQ.png" /></figure><h3>What is Docker?</h3><p>Docker is an open platform for developing, shipping, and running applications. It enable you to separate your applications from your infrastructure. Docker provides the ability to package and run an application in a loosely isolated environment called a container.</p><h3>What is Container?</h3><p>Container is a standard unit of software that packages code and all its dependencies in a portable format, making it easy to deploy and run consistently across different computing environments, such as development, testing, and production.</p><h3>What is Container Image?</h3><p>When running a container, it uses an isolated filesystem. This custom filesystem is provided by a container image. It is lightweight, standalone, and executable package that includes everything needed to run an application, including the application code, libraries, dependencies, and the runtime environment. Container images are used as the basis for launching container instances.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*tjTUpEi8h53-DMkweX2TDQ.png" /></figure><p>Container image is a static package that encapsulates an application and its dependencies, while a container is a running instance of that package.</p><h3>Virtual Machines vs Containers</h3><p>Containers are a more lightweight and efficient alternative to VMs, allowing for more efficient resource utilization and faster application deployment.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*kLAhFK_uIlcOt-g7y6De2Q.png" /></figure><p>Both technologies used for deploying and managing applications. But they have significant differences.</p><p>In Virtual Machine <strong>hypervisor</strong> is used to create multiple machines on host operating system and manage them. Each and every virtual machine has their own guest operating system, which means that each virtual machine also requires its own set of resources, including CPU, memory, storage, and networking.</p><p>Containers virtualize only the application and its dependencies, running on top of the host operating system and sharing its kernel. A <strong>container engine/container runtime</strong> is responsible for running and managing containers on a host system. It is the core component of any container platform, providing the necessary functionality to create, start, stop, and manage container instances.</p><h3>Docker Architecture</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/978/1*JMC1PSusm11OYugCW2hxJw.png" /></figure><p>Docker uses a client-server architecture. <br>The Docker <em>client</em> talks to the Docker <em>daemon</em>, which does the heavy lifting of building, running, and distributing your Docker containers.</p><h4>1. Docker Daemon</h4><p>Listens for Docker API requests and manages Docker objects such as images, containers, networks, and volumes.</p><h4>2. The Docker client</h4><p>The way many Docker users interact with Docker. When you use commands such as docker run, the client sends these commands to dockerd, which carries them out. The docker command uses the Docker API.</p><h4>3. Docker registries</h4><p>A Docker registry stores Docker images. Docker Hub is a public registry that anyone can use, and Docker is configured to look for images on Docker Hub by default. You can even run your own private registry.</p><h4>4. Docker objects</h4><p>When you use Docker, you are creating and using images, containers, networks, volumes, plugins, and other objects.</p><h4>i. Images</h4><p>An image is a read-only template with instructions for creating a Docker container. You might create your own images or you might only use those created by others and published in a registry. To build your own image, you create a <strong><em>Dockerfile</em></strong> with a simple syntax for defining the steps needed to create the image and run it.</p><h4>ii. Containers</h4><p>A container is a runnable instance of an image. You can create, start, stop, move, or delete a container using the Docker API or CLI.</p><p><strong><em>Thank You!</em></strong></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=c159e5b102c4" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Git Cheatsheet]]></title>
            <link>https://medium.com/@senali/git-cheatsheet-114e8d0d298a?source=rss-88dd4e3f8521------2</link>
            <guid isPermaLink="false">https://medium.com/p/114e8d0d298a</guid>
            <category><![CDATA[cheatsheet]]></category>
            <category><![CDATA[git-cheat-sheet]]></category>
            <category><![CDATA[git]]></category>
            <category><![CDATA[github]]></category>
            <dc:creator><![CDATA[Senali]]></dc:creator>
            <pubDate>Wed, 25 May 2022 19:34:28 GMT</pubDate>
            <atom:updated>2023-07-15T04:11:23.288Z</atom:updated>
            <content:encoded><![CDATA[<p>Git is a software for tracking changes in any set of files, usually used for coordinating work among programmers collaboratively developing source code during software development.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*YYtrZbMxhjDR8V_UsqofiQ.jpeg" /></figure><pre>git init</pre><blockquote>Create empty Git repo in specified directory</blockquote><pre>git clone &lt;repository url&gt;</pre><blockquote>Clone repo onto local machine</blockquote><pre>git remote</pre><blockquote>Show which remotes are currently connected, also to add new connections or remove existing ones</blockquote><pre>git status</pre><blockquote>List which files are staged, unstaged, and untracked</blockquote><pre>git commit -m &lt;&#39;commit messgae&#39;&gt;</pre><blockquote>Commit the staged snapshot, but instead of launching a text editor, use as the commit message.</blockquote><pre>git checkout -b &lt;branch name&gt;   |   git checkout &lt;branch name&gt;</pre><blockquote>Check out a new branch or existing branch.</blockquote><pre>git merge &lt;branch name&gt;</pre><blockquote>Join two or more development histories together.</blockquote><pre>git diff</pre><blockquote>Show unstaged changes between your index and working directory.</blockquote><pre>git whatchanged</pre><blockquote>Show logs with difference each commit introduces</blockquote><pre>git log</pre><blockquote>Display the entire commit history using the default format.</blockquote><blockquote>git config — global user.name “Your Name”</blockquote><blockquote>git config — global user.email “you@address.com”</blockquote><p>Define the author username and the email address</p><blockquote>git config — list</blockquote><p>List all the git configuration</p><blockquote><em>git config — global — edit</em></blockquote><p>Edit global git config file</p><blockquote>git fetch &amp;&amp; git checkout &lt;branch name&gt;</blockquote><p>Checkout to origins branch</p><blockquote>rm -rf .git*</blockquote><p>Remove GIT version tracking from project</p><blockquote>git remote set-url origin &lt;repository url&gt;</blockquote><p>Change the URI (URL) of a remote git repository</p><blockquote>git rev-list — count &lt;branch name&gt;</blockquote><p>Check the commit count of a branch</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=114e8d0d298a" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Contribute to open source project using GitHub]]></title>
            <link>https://medium.com/@senali/contribute-to-open-source-project-using-github-3df6cca263dc?source=rss-88dd4e3f8521------2</link>
            <guid isPermaLink="false">https://medium.com/p/3df6cca263dc</guid>
            <category><![CDATA[open-source-contribution]]></category>
            <category><![CDATA[open-source-projects]]></category>
            <category><![CDATA[github]]></category>
            <category><![CDATA[git]]></category>
            <dc:creator><![CDATA[Senali]]></dc:creator>
            <pubDate>Mon, 16 May 2022 17:47:04 GMT</pubDate>
            <atom:updated>2022-11-11T12:36:59.152Z</atom:updated>
            <content:encoded><![CDATA[<h4>Best way to improve skill faster and grow network within the community</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*YADXnI5yYqbhStCxN_dNsQ.jpeg" /></figure><ol><li><strong>Select project to contribute</strong></li></ol><p>Click on the issues tab. Then search for good first issues and go to the selected project.</p><blockquote>label:”good first issue”</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*liwN_FP20Bknjc4UB7SbIA.png" /></figure><p><strong>2. Fork the project</strong></p><p>Click on the “Fork” at top right corner. It will create a copy of the current project into your own account.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/650/1*4IYaTmf1cu_Ctkg3GYdXxg.png" /></figure><p><strong>3. Clone your forked project</strong></p><p>Clone forked repo.</p><blockquote>git clone &lt;url&gt;</blockquote><blockquote>cd &lt;directory&gt;</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/810/1*IvuEexFqc5UXZBHyylGzCA.png" /></figure><p><strong>4. Create a branch</strong></p><p>Create a new branch from the current branch of the cloned project.</p><blockquote>git checkout -b &lt;brnach-name&gt;</blockquote><p><strong>5. Make the changes</strong></p><p>Change the files as required for fix the issue.</p><p><strong>6. Commit the changes</strong></p><p>Commit the changes.</p><blockquote>git add .</blockquote><blockquote>git commit -m “…message…”</blockquote><p><strong>7. Push changes</strong></p><p>Push your local commits to your fork repository.</p><blockquote>git push origin &lt;branch-name&gt;</blockquote><p><strong>8. Create a pull request</strong></p><p>Go to original repo you make a fork. Then select “pull requests” tab next click “new pull request” button.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*xROT3RsaHRN-Lv11Q7TuAQ.png" /><figcaption>pull request page</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*nDjDXwhjCpRjgEkEhav2iw.png" /><figcaption>click compare across forks</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*m-JYYE1LQpiLro5ixxErpA.png" /><figcaption>create pull request</figcaption></figure><p>Write proper pull request message. Most of the time owner provide a template for pull request message.</p><p><strong>9. After merge</strong></p><p>Then owner of the project will merge your pull request if it is correct and no any other changes required.</p><p>After merge ….</p><blockquote>git remote -v</blockquote><blockquote>git remote add upstream &lt;original repo url&gt;</blockquote><blockquote>git checkout main</blockquote><blockquote>git fetch upstream</blockquote><blockquote>git merge upstream/main</blockquote><blockquote>git log</blockquote><p>you can see your change in the main branch of the repository.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*8_gkLfDSA8bfXFBm-v4U7g.png" /></figure><p><strong>10. Delete branch</strong></p><p>Finally you can delete your branch</p><p>Thank you for reading !! . I hope these tips help you to contribute open source projects. ❤️ :)</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=3df6cca263dc" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>