<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>
	Comments on: How to Increase Session Time in Laravel?	</title>
	<atom:link href="https://www.bestdevops.com/how-to-increase-session-time-in-laravel/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.bestdevops.com/how-to-increase-session-time-in-laravel/</link>
	<description>Lets Learn, Do it &#38; Share! Thats a Best DevOps!!!</description>
	<lastBuildDate>Tue, 17 Jan 2023 01:51:18 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.2</generator>
	<item>
		<title>
		By: basebbeh		</title>
		<link>https://www.bestdevops.com/how-to-increase-session-time-in-laravel/#comment-470</link>

		<dc:creator><![CDATA[basebbeh]]></dc:creator>
		<pubDate>Tue, 17 Jan 2023 01:51:18 +0000</pubDate>
		<guid isPermaLink="false">https://www.bestdevops.com/?p=27331#comment-470</guid>

					<description><![CDATA[&lt;strong&gt;Day 9 – Terraform Assignment &#038; Project&lt;/strong&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;
&lt;strong&gt;Terraform Project – Assignment – Exercise – Lab#1: Variables&lt;/strong&gt;
&lt;strong&gt;Assignment – 1&lt;/strong&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;
&lt;span&gt;Write a terraform script using aws ec2 instance and github and apply following kind of variables&lt;/span&gt;
&lt;span&gt;Types of Terraform variable – Number&lt;/span&gt;
&lt;span&gt;Types of Terraform variable – String&lt;/span&gt;
&lt;span&gt;Types of Terraform variable – List&lt;/span&gt;
&lt;span&gt;Types of Terraform variable – Map&lt;/span&gt;
&lt;span&gt;Types of Terraform variable – Boolean&lt;/span&gt;
&lt;span&gt;and Declare variables in&lt;/span&gt;
&lt;span&gt;Terraform file&lt;/span&gt;
&lt;span&gt;Override through Command Line&lt;/span&gt;
&lt;span&gt;Example – https://www.devopsschool.com/blog/terraform-variables-complete-reference-guide/&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;strong&gt;&lt;u&gt;Terraform File: Main.tf&lt;/u&gt;&lt;/strong&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;provider “aws “{&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;region &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= “us-east-1”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;access keys &#160;&#160;&#160;&#160;&#160;= “&lt;/span&gt;AKIASPXG6ABZXM2HHJYG”
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;security_ keys =”&lt;/span&gt; 7Vihp703qJ8iMBqbM4QXtngD4MRMNF6vjMPSCCJ4”
}
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;resource “aws_instance ec2” “aws” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;ami &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= “ami-2757f631”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;instance_ type = “t2. micro”&lt;/span&gt;
&lt;span&gt;}&lt;/span&gt;
&lt;span&gt;provider “github” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;token &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= “……… “&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;organization = “&lt;/span&gt;&lt;span&gt;devopsschool-sample-projects&lt;/span&gt;&lt;span&gt; “&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;}&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;variable “num_of_users” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;description = “The is for number of users”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;type.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= “number”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;default = 3&lt;/span&gt;
&lt;span&gt;}&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;variable “aws-region” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;description = “The AWS region”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;type.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= “string”&lt;/span&gt;
&lt;span&gt;}&#160;&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;variable “users” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;description = “This is for list variable”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;type.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= “list”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;default &#160;&#160;&#160;&#160;&#160;&#160;&#160;= [“benz1”,” benz2”,” benz3”]&lt;/span&gt;
&lt;span&gt;}&#160;&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;variable “ami” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;description = “mapping region to ami instance”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;type.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= “map”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;default &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;“us-east-1” &#160;= “ami-b374d5a5”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;“us-west-2” = “ami-4b32be2b”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;}&lt;/span&gt;

&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;&#160;variable “create_vm” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;description = “If set to true, it will create vm”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;type.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= “bool”&lt;/span&gt;
&lt;span&gt;}&#160;&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;strong&gt;Assignment – 2&lt;/strong&gt;
&lt;span&gt;Write a Terraform script which create a ubuntu ec2-instance and copy a ansible playbook, install ansible and run it.&lt;/span&gt;
&lt;span&gt;Step 1 – Create ec2-instance with key and group&lt;/span&gt;
&lt;span&gt;Step 2 – Copy playbook using file terraform provisioner&lt;/span&gt;
&lt;span&gt;Step 3 – Install Ansible using remote terraform provisioner&lt;/span&gt;
&lt;span&gt;Step 4 – Run Ansible playbook command using remote terraform provisioner&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;strong&gt;&lt;u&gt;Step-1&lt;/u&gt; – Create ec2-instance with key and group&lt;/strong&gt;
&lt;strong&gt;&lt;u&gt;&#160;&lt;/u&gt;&lt;/strong&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;data “aws_ami” “ubuntu-linux-2004” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;most_recent = true&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;owners&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= [“099720109477”]&#160;&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;filter {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;name&#160;&#160;&#160;&#160;&#160;&#160;= “name”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;values&#160;&#160;&#160;&#160;&#160;&#160;= [“ubuntu/images/hvm-ssh/ubuntu-focal-20.04-amd64-server-*”]&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;}&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;resource “aws_instance_ ec2” “aws” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;ami&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= “ami-2757f631”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;instance_ type = “t2. micro”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;key_name.&#160;&#160;&#160;&#160;&#160;= “${aws_key_pair.generated_key.key_name}”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;tag&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;name &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= “Helloworld”&lt;/span&gt;
&lt;span&gt;&#160;}&lt;/span&gt;

&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;resources “aws_key_pair” “key_pair” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;key_name&#160;&#160;= “linux-key-pair”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;public_key = tls_private_key.key_pair. public_key_openssh&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;}&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;resource “local_file” “ssh_key” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;filename = “${aws_key_pair.key_pair.key_name}. pem”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;content&#160;&#160;= tls_private_key.key_pair. private_key_pem&lt;/span&gt;
&lt;span&gt;&#160;&#160;&lt;/span&gt;
&lt;span&gt;}&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;resource “aws_security_group” “sg” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;tags = {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;type = “terraform-test-security-group”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;}&lt;/span&gt;

&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;resource “aws_network_interface_sg_attachment” “sg_attachment” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;security_group_id &#160;&#160;&#160;&#160;&#160;= aws_security_group.sg.id&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;network_interface_id = aws_instance. Instance.primary_network.interface_id&lt;/span&gt;
&lt;span&gt;}&lt;/span&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;strong&gt;Step 2 – Copy playbook using file terraform provisioner:&lt;/strong&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;provisioner “file” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;source&#160;&#160;&#160;&#160;&#160;&#160;&#160;= “myapp\ansible playbook. yaml”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;destination = “/etc/myapp.conf”&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;connection {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;type.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;=&#160;“ssh”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;user&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;=&#160;“root”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;password &#160;=&#160;”${var.root_password}”&lt;/span&gt;
&lt;span&gt;host = “${var.host}”&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}&lt;/span&gt;
&lt;span&gt;}&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;strong&gt;Step 3 – Install Ansible using remote terraform provisioner&lt;/strong&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;provisioner &#160;“remote-exec” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;inline = &#160;[&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;“sudo apt-get update”,&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;“sudo apt-get &#160;install ansible”,&lt;/span&gt;
     &quot;sudo systemctl start ansible&quot;,
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;“sudo systemctl enable ansible”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;“echo ““,&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;“ansible --version”&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;]&lt;/span&gt;
&lt;span&gt;}&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;strong&gt;Step 4 – Run Ansible playbook command using remote terraform provisioner&lt;/strong&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;provisioner&#160;“ remote-exec” {&lt;/span&gt;
&lt;span&gt;&#160;&#160;&#160;inline = [ “ansible all -a “df -h” -u root”]&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;connection {&lt;/span&gt;
&lt;span&gt;type = “ssh “&lt;/span&gt;
&lt;span&gt;user = “ubuntu”&lt;/span&gt;
&lt;span&gt;private_key =” ${file(var.ssh_key_private)}”&lt;/span&gt;
&lt;span&gt;&#160;&#160;}&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;}&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;strong&gt;Assignment – 3&lt;/strong&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;
&lt;span&gt;Write a 2 Module in Terraform. One Local Module, Second remote module.&lt;/span&gt;
&lt;span&gt;Local Module Spec – in Ubuntu – Setup a webserver&lt;/span&gt;
&lt;span&gt;Remote module – Setup VPC&lt;/span&gt;
&#160;
&#160;&lt;strong&gt;Local Module to setup Ubuntu webserver.&lt;/strong&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;
provider “aws” {
&#160;&#160;region&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= var.web_region
&#160;&#160;access_key&#160;&#160;= var. access_key
&#160;&#160;secret_key&#160;&#160;&#160;= var. secret_key
}
&lt;strong&gt;&#160;&lt;/strong&gt;
module “ubuntu-webser” {
source&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;= “. /module”
web_instance_type = “t2. large”
}
&#160;
output “public_ip_ec2” {
value.&#160;= module. public_ip_ec2
description = “public ip of ec2”
}
&#160;&lt;strong&gt;&#160;&lt;/strong&gt;
&lt;strong&gt;&#160;Remote Module to setup VPC.&lt;/strong&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;
&lt;span&gt;module&lt;/span&gt;&lt;span&gt; &quot;vpc&quot; &lt;/span&gt;&lt;span&gt;{&lt;/span&gt;
&#160;&#160;&#160;&#160;&lt;span&gt;source&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;&quot;terraform-aws-modules/vpc/aws&quot;&lt;/span&gt;
&#160;
&#160;&#160;&#160;&#160;&lt;span&gt;name&lt;/span&gt; = &lt;span&gt;&quot;my-vpc&quot;&lt;/span&gt;
&#160;&#160;&#160;&#160;&lt;span&gt;cidr&lt;/span&gt; &#160;&#160;&#160;&lt;span&gt;=&lt;/span&gt; &lt;span&gt;&quot;10.0.0.0/16&quot;&lt;/span&gt;
&#160;
&#160;&lt;span&gt;azs&lt;/span&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span&gt;=&lt;/span&gt; &lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;eu-west-1a&quot;&lt;/span&gt;, &lt;span&gt;&quot;eu-west-1b&quot;&lt;/span&gt;, &lt;span&gt;&quot;eu-west-1c&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;
&#160;&#160;&#160;&#160;&#160;&#160;&lt;span&gt;private_subnets&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;10.0.1.0/24&quot;&lt;/span&gt;, &lt;span&gt;&quot;10.0.2.0/24&quot;&lt;/span&gt;, &lt;span&gt;&quot;10.0.3.0/24&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;
&#160;&#160;&#160;&#160;&#160;&#160;&lt;span&gt;public_subnets&lt;/span&gt; = &lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;10.0.101.0/24&quot;&lt;/span&gt;, &lt;span&gt;&quot;10.0.102.0/24&quot;&lt;/span&gt;, &lt;span&gt;&quot;10.0.103.0/24&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;
&#160;
&#160;&#160;&#160;&#160;&#160;&lt;span&gt;enable_nat_gateway&lt;/span&gt; = &lt;span&gt;true&lt;/span&gt;
&#160;&#160;&#160;&#160;&#160;&lt;span&gt;enable_vpn_gateway&lt;/span&gt; &lt;span&gt;=&lt;/span&gt; &lt;span&gt;true&lt;/span&gt;
&#160;
&#160;&lt;span&gt;tags&lt;/span&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span&gt;=&lt;/span&gt; &lt;span&gt;{&lt;/span&gt;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span&gt;terraform&lt;/span&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span&gt;=&lt;/span&gt; &lt;span&gt;&quot;true&quot;&lt;/span&gt;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span&gt;environment&lt;/span&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span&gt;=&lt;/span&gt; &lt;span&gt;&quot;dev&quot;&lt;/span&gt;
&#160;&lt;span&gt;}&lt;/span&gt;
&lt;span&gt;}&lt;/span&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;]]></description>
			<content:encoded><![CDATA[<p><strong>Day 9 – Terraform Assignment &amp; Project</strong><br />
<strong>&nbsp;</strong><br />
<strong>Terraform Project – Assignment – Exercise – Lab#1: Variables</strong><br />
<strong>Assignment – 1</strong><br />
<strong>&nbsp;</strong><br />
<span>Write a terraform script using aws ec2 instance and github and apply following kind of variables</span><br />
<span>Types of Terraform variable – Number</span><br />
<span>Types of Terraform variable – String</span><br />
<span>Types of Terraform variable – List</span><br />
<span>Types of Terraform variable – Map</span><br />
<span>Types of Terraform variable – Boolean</span><br />
<span>and Declare variables in</span><br />
<span>Terraform file</span><br />
<span>Override through Command Line</span><br />
<span>Example – <a href="https://www.devopsschool.com/blog/terraform-variables-complete-reference-guide/" rel="nofollow ugc">https://www.devopsschool.com/blog/terraform-variables-complete-reference-guide/</a></span><br />
<span>&nbsp;</span><br />
<strong><u>Terraform File: Main.tf</u></strong><br />
<span>&nbsp;</span><br />
<span>provider “aws “{</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;region &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “us-east-1”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;access keys &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “</span>AKIASPXG6ABZXM2HHJYG”<br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;security_ keys =”</span> 7Vihp703qJ8iMBqbM4QXtngD4MRMNF6vjMPSCCJ4”<br />
}<br />
<span>&nbsp;</span><br />
<span>resource “aws_instance ec2” “aws” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ami &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “ami-2757f631”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;instance_ type = “t2. micro”</span><br />
<span>}</span><br />
<span>provider “github” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;token &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “……… “</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;organization = “</span><span>devopsschool-sample-projects</span><span> “</span><br />
<span>&nbsp;</span><br />
<span>}</span><br />
<span>&nbsp;</span><br />
<span>variable “num_of_users” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;description = “The is for number of users”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “number”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;default = 3</span><br />
<span>}</span><br />
<span>&nbsp;</span><br />
<span>variable “aws-region” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;description = “The AWS region”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “string”</span><br />
<span>}&nbsp;</span><br />
<span>&nbsp;</span><br />
<span>variable “users” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;description = “This is for list variable”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “list”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;default &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= [“benz1”,” benz2”,” benz3”]</span><br />
<span>}&nbsp;</span><br />
<span>&nbsp;</span><br />
<span>variable “ami” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;description = “mapping region to ami instance”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “map”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;default &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;“us-east-1” &nbsp;= “ami-b374d5a5”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;“us-west-2” = “ami-4b32be2b”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;}</span></p>
<p><span>&nbsp;</span><br />
<span>&nbsp;variable “create_vm” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;description = “If set to true, it will create vm”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “bool”</span><br />
<span>}&nbsp;</span><br />
<span>&nbsp;</span><br />
<span>&nbsp;</span><br />
<strong>Assignment – 2</strong><br />
<span>Write a Terraform script which create a ubuntu ec2-instance and copy a ansible playbook, install ansible and run it.</span><br />
<span>Step 1 – Create ec2-instance with key and group</span><br />
<span>Step 2 – Copy playbook using file terraform provisioner</span><br />
<span>Step 3 – Install Ansible using remote terraform provisioner</span><br />
<span>Step 4 – Run Ansible playbook command using remote terraform provisioner</span><br />
<span>&nbsp;</span><br />
<strong><u>Step-1</u> – Create ec2-instance with key and group</strong><br />
<strong><u>&nbsp;</u></strong><br />
<span>&nbsp;</span><br />
<span>data “aws_ami” “ubuntu-linux-2004” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;most_recent = true</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;owners&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= [“099720109477”]&nbsp;</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;filter {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “name”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;values&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= [“ubuntu/images/hvm-ssh/ubuntu-focal-20.04-amd64-server-*”]</span><br />
<span>&nbsp;</span><br />
<span>}</span><br />
<span>&nbsp;</span><br />
<span>resource “aws_instance_ ec2” “aws” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ami&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “ami-2757f631”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;instance_ type = “t2. micro”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;key_name.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “${aws_key_pair.generated_key.key_name}”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tag&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “Helloworld”</span><br />
<span>&nbsp;}</span></p>
<p><span>&nbsp;</span><br />
<span>resources “aws_key_pair” “key_pair” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;key_name&nbsp;&nbsp;= “linux-key-pair”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;public_key = tls_private_key.key_pair. public_key_openssh</span><br />
<span>&nbsp;</span><br />
<span>}</span><br />
<span>&nbsp;</span><br />
<span>resource “local_file” “ssh_key” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;filename = “${aws_key_pair.key_pair.key_name}. pem”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;content&nbsp;&nbsp;= tls_private_key.key_pair. private_key_pem</span><br />
<span>&nbsp;&nbsp;</span><br />
<span>}</span><br />
<span>&nbsp;</span><br />
<span>resource “aws_security_group” “sg” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tags = {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type = “terraform-test-security-group”</span><br />
<span>&nbsp;&nbsp;&nbsp;}</span></p>
<p><span>&nbsp;</span><br />
<span>resource “aws_network_interface_sg_attachment” “sg_attachment” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;security_group_id &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= aws_security_group.sg.id</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;network_interface_id = aws_instance. Instance.primary_network.interface_id</span><br />
<span>}</span><br />
<strong>&nbsp;</strong><br />
<span>&nbsp;</span><br />
<strong>Step 2 – Copy playbook using file terraform provisioner:</strong><br />
<span>&nbsp;</span><br />
<span>provisioner “file” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;source&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “myapp\ansible playbook. yaml”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;destination = “/etc/myapp.conf”</span><br />
<span>&nbsp;</span><br />
<span>connection {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;“ssh”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;user&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;“root”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;password &nbsp;=&nbsp;”${var.root_password}”</span><br />
<span>host = “${var.host}”</span><br />
<span>&nbsp;</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><br />
<span>}</span><br />
<span>&nbsp;</span><br />
<strong>Step 3 – Install Ansible using remote terraform provisioner</strong><br />
<span>&nbsp;</span><br />
<span>&nbsp;</span><br />
<span>provisioner &nbsp;“remote-exec” {</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inline = &nbsp;[</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;“sudo apt-get update”,</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;“sudo apt-get &nbsp;install ansible”,</span><br />
     &#8220;sudo systemctl start ansible&#8221;,<br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;“sudo systemctl enable ansible”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;“echo ““,</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;“ansible &#8211;version”</span><br />
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</span><br />
<span>}</span><br />
<span>&nbsp;</span><br />
<strong>Step 4 – Run Ansible playbook command using remote terraform provisioner</strong><br />
<span>&nbsp;</span><br />
<span>provisioner&nbsp;“ remote-exec” {</span><br />
<span>&nbsp;&nbsp;&nbsp;inline = [ “ansible all -a “df -h” -u root”]</span><br />
<span>&nbsp;</span><br />
<span>connection {</span><br />
<span>type = “ssh “</span><br />
<span>user = “ubuntu”</span><br />
<span>private_key =” ${file(var.ssh_key_private)}”</span><br />
<span>&nbsp;&nbsp;}</span><br />
<span>&nbsp;</span><br />
<span>}</span><br />
<span>&nbsp;</span><br />
<strong>Assignment – 3</strong><br />
<strong>&nbsp;</strong><br />
<span>Write a 2 Module in Terraform. One Local Module, Second remote module.</span><br />
<span>Local Module Spec – in Ubuntu – Setup a webserver</span><br />
<span>Remote module – Setup VPC</span><br />
&nbsp;<br />
&nbsp;<strong>Local Module to setup Ubuntu webserver.</strong><br />
<strong>&nbsp;</strong><br />
provider “aws” {<br />
&nbsp;&nbsp;region&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= var.web_region<br />
&nbsp;&nbsp;access_key&nbsp;&nbsp;= var. access_key<br />
&nbsp;&nbsp;secret_key&nbsp;&nbsp;&nbsp;= var. secret_key<br />
}<br />
<strong>&nbsp;</strong><br />
module “ubuntu-webser” {<br />
source&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= “. /module”<br />
web_instance_type = “t2. large”<br />
}<br />
&nbsp;<br />
output “public_ip_ec2” {<br />
value.&nbsp;= module. public_ip_ec2<br />
description = “public ip of ec2”<br />
}<br />
&nbsp;<strong>&nbsp;</strong><br />
<strong>&nbsp;Remote Module to setup VPC.</strong><br />
<strong>&nbsp;</strong><br />
<span>module</span><span> &#8220;vpc&#8221; </span><span>{</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;<span>source</span> <span>=</span> <span>&#8220;terraform-aws-modules/vpc/aws&#8221;</span><br />
&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;<span>name</span> = <span>&#8220;my-vpc&#8221;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;<span>cidr</span> &nbsp;&nbsp;&nbsp;<span>=</span> <span>&#8220;10.0.0.0/16&#8221;</span><br />
&nbsp;<br />
&nbsp;<span>azs</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span>=</span> <span>[</span><span>&#8220;eu-west-1a&#8221;</span>, <span>&#8220;eu-west-1b&#8221;</span>, <span>&#8220;eu-west-1c&#8221;</span><span>]</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span>private_subnets</span> <span>=</span> <span>[</span><span>&#8220;10.0.1.0/24&#8221;</span>, <span>&#8220;10.0.2.0/24&#8221;</span>, <span>&#8220;10.0.3.0/24&#8221;</span><span>]</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span>public_subnets</span> = <span>[</span><span>&#8220;10.0.101.0/24&#8221;</span>, <span>&#8220;10.0.102.0/24&#8221;</span>, <span>&#8220;10.0.103.0/24&#8221;</span><span>]</span><br />
&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span>enable_nat_gateway</span> = <span>true</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span>enable_vpn_gateway</span> <span>=</span> <span>true</span><br />
&nbsp;<br />
&nbsp;<span>tags</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span>=</span> <span>{</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span>terraform</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span>=</span> <span>&#8220;true&#8221;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span>environment</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span>=</span> <span>&#8220;dev&#8221;</span><br />
&nbsp;<span>}</span><br />
<span>}</span><br />
<strong>&nbsp;</strong><br />
<strong>&nbsp;</strong><br />
<strong>&nbsp;</strong><br />
<strong>&nbsp;</strong><br />
<strong>&nbsp;</strong></p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: basebbeh		</title>
		<link>https://www.bestdevops.com/how-to-increase-session-time-in-laravel/#comment-469</link>

		<dc:creator><![CDATA[basebbeh]]></dc:creator>
		<pubDate>Tue, 17 Jan 2023 01:41:43 +0000</pubDate>
		<guid isPermaLink="false">https://www.bestdevops.com/?p=27331#comment-469</guid>

					<description><![CDATA[&lt;strong&gt;Day 7 – Git Assignment &#038; Project&lt;/strong&gt;
&lt;strong&gt;Git Lab Exercise &#038; Assignment &#038; Project: Part – 10&lt;/strong&gt;
&#160;
&lt;strong&gt;Q1. What are differences between the git distributed model and SVN server-client model?&lt;/strong&gt;
&lt;strong&gt;Distributed Version Control System&lt;/strong&gt;
&lt;strong&gt;Q1. What are differences between the git distributed model and SVN server-client model?&lt;/strong&gt;
Distributed Version Control System
In distributed version control most of the mechanism or model applies the same as centralized. The only major difference you will find here is, instead of one single repository which is the server, here every single developer or client has their own server and they will have a copy of the entire history or version of the code and all of its branches in their local server or machine. Basically, every client or user can work locally and disconnected which is more convenient than centralized source control and that’s why it is called distributed.&#160;
You don’t need to rely on the central server, you can clone the entire history or copy of the code to your hard drive. So when you start working on a project, you clone the code from the master repository in your own hard drive, then you get the code from your own repository to make changes and after doing changes, you commit your changes to your local repository and at this point, your local repository will have change sets but it is still disconnected with the master repository (master repository will have different &lt;strong&gt;sets of changes&lt;/strong&gt; from each and every individual developer’s repository), so to communicate with it, you issue a request to the master repository and push your local repository code to the master repository. Getting the new change from a repository is called &lt;strong&gt;pulling &lt;/strong&gt;and merging your local repository’s set of changes is called &lt;strong&gt;pushing&lt;/strong&gt;.&#160;
It doesn’t follow the way of communicating or merging the code straight forward to the master repository after making changes. Firstly you commit all the changes in your own server or repository and then the ‘set of changes’ will merge to the master repository.

&lt;strong&gt;Centralized Version Control System&lt;/strong&gt;In centralized source control, there is a server and a client. The server is the master repository that contains all of the versions of the code. To work on any project, firstly user or client needs to get the code from the master repository or server. So the client communicates with the server and pulls all the code or current version of the code from the server to their local machine. In other terms we can say, you need to take an update from the master repository and then you get the local copy of the code in your system. So once you get the latest version of the code, you start making your own changes in the code and after that, you simply need to commit those changes straight forward into the master repository. Committing a change simply means merging your own code into the master repository or making a new version of the source code. So everything is centralized in this model.&#160;
There will be just one repository and that will contain all the history or version of the code and different branches of the code. So the basic workflow involves in the centralized source control is getting the latest version of the code from a central repository that will contain other people’s code as well, making your own changes in the code, and then committing or merging those changes into the central repository.&#160;

&lt;strong&gt;Basic Difference between Git distributed model and SVN server client model:&#160;&lt;/strong&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;
&lt;strong&gt;&lt;u&gt;Git distributed model:&lt;/u&gt;&lt;/strong&gt;
&lt;span&gt;·&#160;&#160;&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;strong&gt;Git software&lt;/strong&gt;&lt;span&gt;&#160;is installed on a workstation and acts as a client and a server.&lt;/span&gt;
&lt;span&gt;·&#160;&#160;&#160;&#160;&#160;&#160;&lt;/span&gt;Git is more difficult to learn, it has more concepts and commands.&#160;
·&#160;&#160;&#160;&#160;&#160;&#160;It does not have good UI as compared to SVN.
·&#160;&#160;&#160;&#160;&#160;&#160;Git deals with large number of files like binary files that change quickly that why it become slow.
&lt;span&gt;·&#160;&#160;&#160;&#160;&#160;&#160;&lt;/span&gt;In git we create only .git directory.
&lt;span&gt;·&#160;&#160;&#160;&#160;&#160;&#160;&lt;/span&gt;In git we do not required any Network to perform git operation.&#160;
·&#160;&#160;&#160;&#160;&#160;&#160;Git is open source distributed version control system developed by Linus Torvalds in 2005.
·&#160;&#160;&#160;&#160;&#160;&#160;It emphasis on speed and data integrity.
·&#160;&#160;&#160;&#160;&#160;&#160;In git every user has their own copy of code on their local like their own branch.
&lt;span&gt;·&#160;&#160;&#160;&#160;&#160;&#160;&lt;/span&gt;Git has a Distributed Model.
·&#160;&#160;&#160;&#160;&#160;&#160;Every developer has a local copy of the full version history of the project on their individual machine.&#160;
·&#160;&#160;&#160;&#160;&#160;&#160;Git changes happen locally.&#160;So, the developer doesn’t have to be connected all the time.
·&#160;&#160;&#160;&#160;&#160;&#160;Once all the files are downloaded to the developer’s workstation, local operations are faster.

&lt;strong&gt;&lt;u&gt;SVN server-client model:&lt;/u&gt;&lt;/strong&gt;

·&#160;&#160;&#160;&#160;&#160;&#160;&lt;strong&gt;SVN&lt;/strong&gt;&#160;has a&#160;separate server and client.
·&#160;&#160;&#160;&#160;&#160;&#160;Apache Subversion is an open source software version and revision control system under Apache license.
·&#160;&#160;&#160;&#160;&#160;&#160;SVN has a Centralized Model.
·&#160;&#160;&#160;&#160;&#160;&#160;In SVN we required Network for runs the SVN operation.&#160;
·&#160;&#160;&#160;&#160;&#160;&#160;In SVN there is central repository has working copy that also make changes and committed in central repository.
·&#160;&#160;&#160;&#160;&#160;&#160;SVN is much easier to learn as compared to git.
·&#160;&#160;&#160;&#160;&#160;&#160;SVN control the large number of binary files easily.
·&#160;&#160;&#160;&#160;&#160;&#160;In SVN we create .svn directory in each folder.
·&#160;&#160;&#160;&#160;&#160;&#160;SVN has simple and better user interface .
·&#160;&#160;&#160;&#160;&#160;&#160;Only the files a developer is working on are kept on the local machine.
·&#160;&#160;&#160;&#160;&#160;&#160;The developer must be online, working with the server.&#160;
·&#160;&#160;&#160;&#160;&#160;&#160;Users check&#160;out files and commit&#160;changes back to the server.&#160;

&lt;strong&gt;Q2. Explain the use of Git Workspace – Staging – Repository area in detail with few use cases.&lt;/strong&gt;

&lt;strong&gt;&lt;u&gt;The workspace:&lt;/u&gt;&lt;/strong&gt;&lt;span&gt; Is where files that are not handled by Git or is&#160;a private development area where you can keep your work and those contributions that are shared by your team members.These files are also referred to as untracked files. Staging area is files that are going to be part of the next commit, which lets Git know what changes in the file are going to occur for the next commit. Your work is private to the workspace until you decide to deliver it to a team flow target such as a shared stream.&lt;/span&gt;

&lt;strong&gt;&lt;u&gt;Git staging area:&lt;/u&gt;&lt;/strong&gt; This means that if you made 100 new changes to your code, you can break these 100 changes into 10 or 20 or more commits each with their own comments and their own detailed explanation of what just happened. You would use patch staging if you and a co-worker are both working on the same file and you only want to commit a particular function that you have worked on.
&#160;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Repositories area:&lt;/u&gt;&lt;/strong&gt;&lt;span&gt; &lt;/span&gt;&lt;/p&gt;&lt;p&gt;Git &lt;span&gt;contains a collection of files of various different versions of a Project. These files are imported from the repository into the local server of the user for further update and modifications in the content of the file. A Version Control System is used to create these versions and store them in a specific place termed a repository. The process of copying the content from an existing Git Repository with the help of various Git Tools is termed&#160;&lt;/span&gt;&lt;strong&gt;cloning.&lt;/strong&gt;&lt;span&gt; Once the cloning process is done, the user gets the complete repository on his local machine. Git by default assumes the work to be done on the repository is as a user, once the cloning is done. Users can &lt;/span&gt;also&#160;&lt;a href=&quot;https://www.geeksforgeeks.org/creating-repository-in-github/&quot; target=&quot;_blank&quot; rel=&quot;noopener nofollow ugc&quot;&gt;create a new repository&lt;/a&gt;&#160;&lt;span&gt;or delete an existing repository. To delete a repository, the simpler way is to just delete the folder containing the repository.&lt;/span&gt;&lt;/p&gt;&lt;span&gt;&#160;&lt;/span&gt;
&lt;strong&gt;Q3. Write down the Types of git branch and use cases of it:&lt;/strong&gt;
Branching means diverging from the mainline and continue to work separately without messing with the mainline. Nearly every VCS has some form of branch support. In Git, a branch is simply a reference to the commit, where the following commits will be attached.&#160;

&lt;span&gt;The two primary branches in Git flow are master branch and development branch. A branch represents an independent line of development&lt;/span&gt;&lt;span&gt; . A branch as discussed earlier is a separate line of development as git stores branch as a reference to commits.&lt;/span&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;

&lt;strong&gt;Use cases of Git branch: &lt;/strong&gt;&lt;span&gt;Git branch is used to list, create, rename and delete branches and it’s easier to logically divide up your work than have big beefy branche.&#160;&lt;/span&gt;

&lt;strong&gt;Q4. Explain the Types of Merging and use cases of it.&lt;/strong&gt;
&lt;strong&gt;&#160;&lt;/strong&gt;
&lt;span&gt;The concept of git merging is basically to merge multiple sequences of commits, stored in multiple branches in a unified history or to be simple you can say in a single branch. There is a proper merging algorithm in git, with the help of which git performs all of these operations and presents conflicts if there are any.&lt;/span&gt;
&lt;span&gt;What happens is when we try to merge two branches, git takes two commit pointers and starts searching for a common base commit in those two specified bit branches. When git finds the common base commit it simply creates a “merge commit” automatically and merges each queued merge commit sequence.&lt;/span&gt;
&lt;span&gt;In our case, we have two branches one is the default branch called “main” and the other branch named “dev” and this is how our git repo looks before merging.&lt;/span&gt;
&lt;span&gt;Here git finds the common base, creates a new merge commit, and merged them.&lt;/span&gt;
&lt;span&gt;A git merge operation is performed by running the command “git merge &#060;name of the branch to be merged (in our case it is dev). When we perform merging, git always merges with the current branch from where we are performing the operation(in our case it is main). By this, the branch being merged is not affected.&lt;/span&gt;
&lt;span&gt;Types of merges:&lt;/span&gt;
&lt;span&gt;1.&#160;&#160;&#160;&#160;&#160;Fast-forward merge&lt;/span&gt;
&lt;span&gt;2.&#160;&#160;&#160;&#160;&#160;Three way merge&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;strong&gt;&lt;u&gt;Fast forward merge:&lt;/u&gt;&lt;/strong&gt;&lt;span&gt; Happens when the tip of the current branch (dev in our case) is a direct ancestor of the target branch (main in our case). Here instead of actually merging the two branches git simply moves the current branch tip up to the target branch tip. Fast-forward merge is not possible if the branches have diverged.&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;strong&gt;&lt;u&gt;3-way merge&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;:&lt;/u&gt;&lt;span&gt; Which uses a dedicated commit to merge two histories or you can say branches.&lt;/span&gt;

&lt;strong&gt;&#160;&lt;/strong&gt;&#160;&lt;strong&gt;&lt;u&gt;Use cases:&lt;/u&gt;&lt;/strong&gt;&lt;span&gt; The merge command is used to integrate changes from another branch. The target of this integration (i.e., the branch that receives changes) is always the currently checked out HEAD branch.&lt;/span&gt;
&lt;span&gt;&#160;&lt;/span&gt;
&lt;span&gt;In the most frequent use cases, git merge is used&#160;to combine two branches.&lt;/span&gt;
&lt;span&gt;Here we have created two branches one is the default “main” and another is “dev”. We have also committed two changes in two branches.&lt;/span&gt;
&lt;span&gt;Now to merge these two branches first we have to follow the below steps&lt;/span&gt;
&lt;span&gt;·&#160;&#160;&#160;&#160;&#160;&#160;checkout to the target branch to merge the current branch&lt;/span&gt;
&lt;span&gt;·&#160;&#160;&#160;&#160;&#160;&#160;then run the below command&lt;/span&gt;

&lt;span&gt;Now we have successfully merged our two branches and as you can see we have same changes or you can say commits in our both branches.&lt;/span&gt;

&lt;strong&gt;Q5. Create a Table with Top 20 Git commands along with one line explanations like self cheatsheet.&lt;/strong&gt;

&lt;strong&gt;Summary of Top 20 Git Commands in table form.&lt;/strong&gt;&lt;u&gt;Command	&lt;/u&gt;                      Use
git init	     .            = Initialises a Git repository in that directory
git add                  =	Adds all changes to the staging area to be committed
git add file_name	= Adds changes to the specified file to the staging area to  be committed
git commit	          = Commits staged changes and allows you to write a commit message
git checkout SHA. =	Checks out a past commit with the given SHA
git checkout SHA -- file_name	  =Checks out the past version of a file from the commit with the given SHA
git checkout -b branch_name =Creates and switches to a new branch
git checkout branch_name     =Switches to the specified branch
git merge branch_name	      =Merges the branch you are on into the specified branch
git log	=Outputs a log of past commits with their commit messages
git status	=Outputs status, including what branch you are on and what changes are staged
git diff	=Outputs the differences between the working directory and most recent commit
git diff thing_a thing_b	=Outputs the differences between two things, such as commits and branches
git clone URL	              =Makes a clone of the repository at the specified URL
git remote add origin URL =Links a local repository and an online repository at the specified URL
git push origin branch_nam =Pushes local changes to the specified branch of the online repository
git pull origin branch_name =Pull changes from the online repository into local repository]]></description>
			<content:encoded><![CDATA[<p><strong>Day 7 – Git Assignment &amp; Project</strong><br />
<strong>Git Lab Exercise &amp; Assignment &amp; Project: Part – 10</strong><br />
&nbsp;<br />
<strong>Q1. What are differences between the git distributed model and SVN server-client model?</strong><br />
<strong>Distributed Version Control System</strong><br />
<strong>Q1. What are differences between the git distributed model and SVN server-client model?</strong><br />
Distributed Version Control System<br />
In distributed version control most of the mechanism or model applies the same as centralized. The only major difference you will find here is, instead of one single repository which is the server, here every single developer or client has their own server and they will have a copy of the entire history or version of the code and all of its branches in their local server or machine. Basically, every client or user can work locally and disconnected which is more convenient than centralized source control and that’s why it is called distributed.&nbsp;<br />
You don’t need to rely on the central server, you can clone the entire history or copy of the code to your hard drive. So when you start working on a project, you clone the code from the master repository in your own hard drive, then you get the code from your own repository to make changes and after doing changes, you commit your changes to your local repository and at this point, your local repository will have change sets but it is still disconnected with the master repository (master repository will have different <strong>sets of changes</strong> from each and every individual developer’s repository), so to communicate with it, you issue a request to the master repository and push your local repository code to the master repository. Getting the new change from a repository is called <strong>pulling </strong>and merging your local repository’s set of changes is called <strong>pushing</strong>.&nbsp;<br />
It doesn’t follow the way of communicating or merging the code straight forward to the master repository after making changes. Firstly you commit all the changes in your own server or repository and then the ‘set of changes’ will merge to the master repository.</p>
<p><strong>Centralized Version Control System</strong>In centralized source control, there is a server and a client. The server is the master repository that contains all of the versions of the code. To work on any project, firstly user or client needs to get the code from the master repository or server. So the client communicates with the server and pulls all the code or current version of the code from the server to their local machine. In other terms we can say, you need to take an update from the master repository and then you get the local copy of the code in your system. So once you get the latest version of the code, you start making your own changes in the code and after that, you simply need to commit those changes straight forward into the master repository. Committing a change simply means merging your own code into the master repository or making a new version of the source code. So everything is centralized in this model.&nbsp;<br />
There will be just one repository and that will contain all the history or version of the code and different branches of the code. So the basic workflow involves in the centralized source control is getting the latest version of the code from a central repository that will contain other people’s code as well, making your own changes in the code, and then committing or merging those changes into the central repository.&nbsp;</p>
<p><strong>Basic Difference between Git distributed model and SVN server client model:&nbsp;</strong><br />
<strong>&nbsp;</strong><br />
<strong><u>Git distributed model:</u></strong><br />
<span>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><strong>Git software</strong><span>&nbsp;is installed on a workstation and acts as a client and a server.</span><br />
<span>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>Git is more difficult to learn, it has more concepts and commands.&nbsp;<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;It does not have good UI as compared to SVN.<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Git deals with large number of files like binary files that change quickly that why it become slow.<br />
<span>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>In git we create only .git directory.<br />
<span>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>In git we do not required any Network to perform git operation.&nbsp;<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Git is open source distributed version control system developed by Linus Torvalds in 2005.<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;It emphasis on speed and data integrity.<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;In git every user has their own copy of code on their local like their own branch.<br />
<span>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>Git has a Distributed Model.<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Every developer has a local copy of the full version history of the project on their individual machine.&nbsp;<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Git changes happen locally.&nbsp;So, the developer doesn’t have to be connected all the time.<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Once all the files are downloaded to the developer’s workstation, local operations are faster.</p>
<p><strong><u>SVN server-client model:</u></strong></p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>SVN</strong>&nbsp;has a&nbsp;separate server and client.<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Apache Subversion is an open source software version and revision control system under Apache license.<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SVN has a Centralized Model.<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;In SVN we required Network for runs the SVN operation.&nbsp;<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;In SVN there is central repository has working copy that also make changes and committed in central repository.<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SVN is much easier to learn as compared to git.<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SVN control the large number of binary files easily.<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;In SVN we create .svn directory in each folder.<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SVN has simple and better user interface .<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Only the files a developer is working on are kept on the local machine.<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The developer must be online, working with the server.&nbsp;<br />
·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Users check&nbsp;out files and commit&nbsp;changes back to the server.&nbsp;</p>
<p><strong>Q2. Explain the use of Git Workspace – Staging – Repository area in detail with few use cases.</strong></p>
<p><strong><u>The workspace:</u></strong><span> Is where files that are not handled by Git or is&nbsp;a private development area where you can keep your work and those contributions that are shared by your team members.These files are also referred to as untracked files. Staging area is files that are going to be part of the next commit, which lets Git know what changes in the file are going to occur for the next commit. Your work is private to the workspace until you decide to deliver it to a team flow target such as a shared stream.</span></p>
<p><strong><u>Git staging area:</u></strong> This means that if you made 100 new changes to your code, you can break these 100 changes into 10 or 20 or more commits each with their own comments and their own detailed explanation of what just happened. You would use patch staging if you and a co-worker are both working on the same file and you only want to commit a particular function that you have worked on.<br />
&nbsp;</p>
<p><strong><u>Repositories area:</u></strong><span> </span></p>
<p>Git <span>contains a collection of files of various different versions of a Project. These files are imported from the repository into the local server of the user for further update and modifications in the content of the file. A Version Control System is used to create these versions and store them in a specific place termed a repository. The process of copying the content from an existing Git Repository with the help of various Git Tools is termed&nbsp;</span><strong>cloning.</strong><span> Once the cloning process is done, the user gets the complete repository on his local machine. Git by default assumes the work to be done on the repository is as a user, once the cloning is done. Users can </span>also&nbsp;<a href="https://www.geeksforgeeks.org/creating-repository-in-github/" target="_blank" rel="noopener nofollow ugc">create a new repository</a>&nbsp;<span>or delete an existing repository. To delete a repository, the simpler way is to just delete the folder containing the repository.</span></p>
<p><span>&nbsp;</span><br />
<strong>Q3. Write down the Types of git branch and use cases of it:</strong><br />
Branching means diverging from the mainline and continue to work separately without messing with the mainline. Nearly every VCS has some form of branch support. In Git, a branch is simply a reference to the commit, where the following commits will be attached.&nbsp;</p>
<p><span>The two primary branches in Git flow are master branch and development branch. A branch represents an independent line of development</span><span> . A branch as discussed earlier is a separate line of development as git stores branch as a reference to commits.</span><br />
<strong>&nbsp;</strong></p>
<p><strong>Use cases of Git branch: </strong><span>Git branch is used to list, create, rename and delete branches and it’s easier to logically divide up your work than have big beefy branche.&nbsp;</span></p>
<p><strong>Q4. Explain the Types of Merging and use cases of it.</strong><br />
<strong>&nbsp;</strong><br />
<span>The concept of git merging is basically to merge multiple sequences of commits, stored in multiple branches in a unified history or to be simple you can say in a single branch. There is a proper merging algorithm in git, with the help of which git performs all of these operations and presents conflicts if there are any.</span><br />
<span>What happens is when we try to merge two branches, git takes two commit pointers and starts searching for a common base commit in those two specified bit branches. When git finds the common base commit it simply creates a “merge commit” automatically and merges each queued merge commit sequence.</span><br />
<span>In our case, we have two branches one is the default branch called “main” and the other branch named “dev” and this is how our git repo looks before merging.</span><br />
<span>Here git finds the common base, creates a new merge commit, and merged them.</span><br />
<span>A git merge operation is performed by running the command “git merge &lt;name of the branch to be merged (in our case it is dev). When we perform merging, git always merges with the current branch from where we are performing the operation(in our case it is main). By this, the branch being merged is not affected.</span><br />
<span>Types of merges:</span><br />
<span>1.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Fast-forward merge</span><br />
<span>2.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Three way merge</span><br />
<span>&nbsp;</span><br />
<strong><u>Fast forward merge:</u></strong><span> Happens when the tip of the current branch (dev in our case) is a direct ancestor of the target branch (main in our case). Here instead of actually merging the two branches git simply moves the current branch tip up to the target branch tip. Fast-forward merge is not possible if the branches have diverged.</span><br />
<span>&nbsp;</span><br />
<strong><u>3-way merge</u></strong><u>:</u><span> Which uses a dedicated commit to merge two histories or you can say branches.</span></p>
<p><strong>&nbsp;</strong>&nbsp;<strong><u>Use cases:</u></strong><span> The merge command is used to integrate changes from another branch. The target of this integration (i.e., the branch that receives changes) is always the currently checked out HEAD branch.</span><br />
<span>&nbsp;</span><br />
<span>In the most frequent use cases, git merge is used&nbsp;to combine two branches.</span><br />
<span>Here we have created two branches one is the default “main” and another is “dev”. We have also committed two changes in two branches.</span><br />
<span>Now to merge these two branches first we have to follow the below steps</span><br />
<span>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;checkout to the target branch to merge the current branch</span><br />
<span>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;then run the below command</span></p>
<p><span>Now we have successfully merged our two branches and as you can see we have same changes or you can say commits in our both branches.</span></p>
<p><strong>Q5. Create a Table with Top 20 Git commands along with one line explanations like self cheatsheet.</strong></p>
<p><strong>Summary of Top 20 Git Commands in table form.</strong><u>Command	</u>                      Use<br />
git init	     .            = Initialises a Git repository in that directory<br />
git add                  =	Adds all changes to the staging area to be committed<br />
git add file_name	= Adds changes to the specified file to the staging area to  be committed<br />
git commit	          = Commits staged changes and allows you to write a commit message<br />
git checkout SHA. =	Checks out a past commit with the given SHA<br />
git checkout SHA &#8212; file_name	  =Checks out the past version of a file from the commit with the given SHA<br />
git checkout -b branch_name =Creates and switches to a new branch<br />
git checkout branch_name     =Switches to the specified branch<br />
git merge branch_name	      =Merges the branch you are on into the specified branch<br />
git log	=Outputs a log of past commits with their commit messages<br />
git status	=Outputs status, including what branch you are on and what changes are staged<br />
git diff	=Outputs the differences between the working directory and most recent commit<br />
git diff thing_a thing_b	=Outputs the differences between two things, such as commits and branches<br />
git clone URL	              =Makes a clone of the repository at the specified URL<br />
git remote add origin URL =Links a local repository and an online repository at the specified URL<br />
git push origin branch_nam =Pushes local changes to the specified branch of the online repository<br />
git pull origin branch_name =Pull changes from the online repository into local repository</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
