>  기사  >  운영 및 유지보수  >  리눅스에 git을 설치하는 명령어는 무엇인가요?

리눅스에 git을 설치하는 명령어는 무엇인가요?

WBOY
WBOY원래의
2022-06-30 17:09:064525검색

Linux에서 git을 설치하는 명령은 "yum install git"입니다. yum은 "Yellow dog Updater Modified"의 약어입니다. yum은 rpm 패키지를 자동으로 업그레이드, 설치 및 제거하고 rpm 패키지에 대한 정보를 수집하는 데 사용됩니다. 종속성을 확인하고 자동으로 사용자에게 해결하라는 메시지를 표시하므로 yum을 사용하여 git을 설치할 수 있습니다.

리눅스에 git을 설치하는 명령어는 무엇인가요?

이 튜토리얼의 운영 환경: linux7.3 시스템, Dell G3 컴퓨터.

Linux에 git을 설치하는 명령은 무엇인가요

Git 공식 홈페이지

https://git-scm.com/

Git 설치

[root@git ~]# yum install git						#git的安装,直接使用yum安装

버전 보기

[root@git ~]# git --version							#查看git的版本git version 1.8.3.1

확장된 지식 :

Git 개인 신원 설정

Git은 분산 버전 관리 시스템이므로 모든 개발자는 자신의 노트북에 Git을 설치한 후 Git에 개인 신원 정보를 설정해야 합니다.

[root@git ~]# git config --global user.name "lisi"						#设置用户姓名[root@git ~]# git config --global user.emain "456789123@qq.com"			#设置邮箱[root@git ~]# git config --global color.ui true							#enable ui颜色[root@git ~]# git config --list											#查看配置user.name=lisi
user.emain=456789123@qq.com
color.ui=true[root@git ~]#

Git의 세 가지 핵심 프레임워크

작업 디렉터리: 개발자가 일반적으로 프로젝트 코드를 저장하는 디렉터리
스테이징 영역(스테이지): 개발자 코드의 변경 사항을 임시로 저장하는 데 사용됩니다. 제출할 파일 목록 정보
Git 저장소(Repository): 데이터가 안전하게 저장되는 위치입니다. Git 저장소에는 개발자가 제출한 모든 버전의 데이터 코드가 포함되어 있습니다. 저장소.
리눅스에 git을 설치하는 명령어는 무엇인가요?
Git의 작업 흐름은 일반적으로 다음과 같습니다.
1. 작업 디렉터리에 코드 파일을 추가하고 수정합니다.
2. 버전 관리가 필요한 코드 파일을 준비 영역에 넣습니다.
3. 준비 영역에 파일을 제출합니다. Git 저장소에.

따라서 Git에서 관리하는 파일에는 수정, 준비, 커밋의 세 가지 상태가 있으며, 이는 위의 각 프로세스에 차례로 해당합니다.

Git 명령 연습

1. 프로젝트 디렉토리를 생성 및 초기화하고 이 디렉토리에 편집 코드를 저장합니다.

[root@git ~]# mkdir Dosier_Project									#创建一个项目代码目录
[root@git ~]# cd Dosier_Project/									#进入目录
[root@git Dosier_Project]# git init									#初始化目录,让目录受到git版本控制
Initialized empty Git repository in /root/Dosier_Project/.git/		#初始化了一个空的git仓库
[root@git Dosier_Project]# ll -al									#查看该目录
total 0
drwxr-xr-x  3 root root  18 Jan 31 16:15 .
dr-xr-x---. 5 root root 215 Jan 31 16:14 ..
drwxr-xr-x  7 root root 119 Jan 31 16:15 .git						
#发现git init初始化命令就是生成了.git目录,这个.git目录就是git仓库,以后在Dosier_Project目录下做的所有操作就可以受到git版本控制了
[root@git Dosier_Project]#

2. git add는 코드 파일을 임시 저장소에 제출합니다. Area

[root@git Dosier_Project]# cd /root/Dosier_Project/				#进去到项目目录
[root@git Dosier_Project]# vim dossier.sh 						#创建一个代码文件
[root@git Dosier_Project]#

4. git commit 임시 저장 영역에 있는 모든 파일을 git Warehouse에 제출합니다.

git commit은 임시 저장 영역에 있는 모든 파일을 git Warehouse에 제출한다는 의미입니다.

[root@git Dosier_Project]# git status								#查看状态
# On branch master
#
# Initial commit
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       dossier.sh
nothing added to commit but untracked files present (use "git add" to track)
#解释:Untracked files 说明存在未跟踪的文件(下边红色的那个)
#所谓的“未跟踪”文件,是指那些新添加的并且未被加入到暂存区域或提交的文件。它们处于一个逍遥法外的状态,当你一旦将它们加入暂存区域或提交到 Git 仓库,它们就开始受到 Git 的“跟踪”了
[root@git Dosier_Project]# git add dossier.sh 					#用git add命令把文件提交暂存区
[root@git Dosier_Project]# git status         					#再次查看状态
# On branch master
#
# Initial commit
#
# Changes to be committed:											#意思是要提交的更改,等待提交
#   (use "git rm --cached <file>..." to unstage)
#
#       new file:   dossier.sh										#暂存区已经有一个文件了
#
[root@git Dosier_Project]#</file></file>

5. 계속해서 버전 2와 버전 3을 시뮬레이션하세요
[root@git Dosier_Project]# git commit -m "lisi add dossier.sh file"		#提交暂存区内的文件到git仓库,-m参数表示写的注释
[master (root-commit) c2b3806] lisi add dossier.sh file
 1 file changed, 2 insertions(+)
 create mode 100644 dossier.sh
[root@git Dosier_Project]# git status				#再次查看状态,提示暂存区没有要commit的,工作目录文件也没有编辑过
# On branch master
nothing to commit, working directory clean
[root@git Dosier_Project]#

6. git log 명령과 git reflog 명령을 사용하여 git Warehouse에 어떤 버전이 있는지 확인하세요

git log와 git reflog 명령 모두 어떤 버전을 확인할 수 있습니다. git Warehouse에 있지만 둘 다 차이점은 git log는 현재 버전만 볼 수 있는 반면 git reflog는 모든 버전을 볼 수 있다는 것입니다. 즉, 버전을 롤백한 후 git reflog는 이전 버전을 볼 수 있습니다. 롤백하기 일반적으로 git reflog를 사용합니다.

#模拟版本2,模拟版本2为修改dossier_1.sh文件,新加一个dossier_2.sh文件
[root@git ~]# cd ~/Dosier_Project/
[root@git Dosier_Project]# echo "I am good dossier_1" >> dossier_1.sh 		#修改了dossier_1.sh文件
[root@git Dosier_Project]# touch dossier_2.sh								#新加dossier_2.sh文件
[root@git Dosier_Project]# echo "I am dossier_2" >> dossier_2.sh
[root@git Dosier_Project]# git add *										#星号匹配所有(等价于--all),把所有文件提交暂存区
[root@git Dosier_Project]# git commit -m "modified dossier_1.sh,add dossier_2.sh"	#git commit提交暂存区文件到仓库
[master beff2ea] modified dossier_1.sh,add dossier_2.sh
 2 files changed, 2 insertions(+)
 create mode 100644 dossier_2.sh
[root@git Dosier_Project]# git status										#查看状态,三大区域已经一致
# On branch master
nothing to commit, working directory clean

#继续模拟版本3,继续模拟版本3为新加一个dossier_3.sh文件
[root@git Dosier_Project]# touch dossier_3.sh								#新加一个dossier_3.sh文件
[root@git Dosier_Project]# echo "I am dossier_3">> dossier_3.sh
[root@git Dosier_Project]# git add dossier_3.sh 							#把dossier_3.sh提交到暂存区
[root@git Dosier_Project]# git commit -m "Add dossier_3.sh"					#把暂存区内容提交到git仓库
[master 72cd563] Add dossier_3.sh
 1 file changed, 1 insertion(+)
 create mode 100644 dossier_3.sh
[root@git Dosier_Project]# git status										#查看状态,三大区域已经一致
# On branch master
nothing to commit, working directory clean
[root@git Dosier_Project]# 

以上,我们就创建了3个版本,版本1为创建dossier_1.sh文件,版本2为修改dossier_1.sh文件,新加一个dossier_2.sh文件,模拟版本3为新加一个dossier_3.sh文件										#查看状态,三大区域已经一致# On branch masternothing to commit, working directory clean[root@git Dosier_Project]# 以上,我们就创建了3个版本,版本1为创建dossier_1.sh文件,版本2为修改dossier_1.sh文件,新加一个dossier_2.sh文件,模拟版本3为新加一个dossier_3.sh文件

7.git Reset --무료 버전 롤백을 위한 하드 버전 번호
[root@git Dosier_Project]# git log									#git log命令查看git仓库中有哪些版本commit 72cd563e2e0241670d7ebe8c541f28a12875e1e8
Author: lisi Date:   Mon Jan 31 18:05:42 2022 +0800

    Add dossier_3.sh

commit beff2eaf816f345ba39779494752228a06ac1499
Author: lisi Date:   Mon Jan 31 18:01:03 2022 +0800

    modified dossier_1.sh,add dossier_2.sh

commit ae2c1b8752efd01ef265e2227dd0b4ceb81310f4
Author: lisi Date:   Mon Jan 31 17:53:32 2022 +0800

    Add dossier_1.sh[root@git Dosier_Project]# git reflog								#git reflog命令查看git仓库中有哪些版本72cd563 HEAD@{0}: commit: Add dossier_3.sh
beff2ea HEAD@{1}: commit: modified dossier_1.sh,add dossier_2.sh
ae2c1b8 HEAD@{2}: commit (initial): Add dossier_1.sh[root@git Dosier_Project]#

8.git checkout – 파일 이름, 파일 수정 취소(파일이 임시 저장 영역에 제출되지 않음)

개발 엔지니어가 파일을 수정했습니다. 파일 파일이 준비 영역에 제출되지 않았고 파일 수정 내용을 취소해야 하는 경우 파일 내용을 삭제하여 파일의 원래 상태를 복원할 수 있습니다. 무엇을 삭제할지 알고 싶다면 git checkout 명령을 사용하세요. :

[root@git Dosier_Project]# git reflog								#git reflog命令查看git仓库中有哪些版本,前面的字符就是版本号72cd563 HEAD@{0}: commit: Add dossier_3.sh
beff2ea HEAD@{1}: commit: modified dossier_1.sh,add dossier_2.sh
ae2c1b8 HEAD@{2}: commit (initial): Add dossier_1.sh[root@git Dosier_Project]# git reset --hard beff2ea  				#回退到版本2,即修改dossier_1.sh文件,新加dossier_2.shHEAD is now at beff2ea modified dossier_1.sh,add dossier_2.sh[root@git Dosier_Project]# ll										#查看文件,已经没有了dossier_3.sh文件total 8-rw-r--r-- 1 root root 35 Jan 31 17:56 dossier_1.sh
-rw-r--r-- 1 root root 15 Jan 31 17:56 dossier_2.sh[root@git Dosier_Project]# cat dossier_1.sh 						#dossier_1.sh的最后一行也确实实在版本2时候添加的I am dossier_1
I am good dossier_1[root@git Dosier_Project]# git reset --hard ae2c1b8      			#回退到版本1HEAD is now at ae2c1b8 Add dossier_1.sh[root@git Dosier_Project]# lltotal 4-rw-r--r-- 1 root root 15 Jan 31 18:38 dossier_1.sh					#已经回退到版本1[root@git Dosier_Project]# cat dossier_1.sh 						#已经回退到版本1I am dossier_1	
[root@git Dosier_Project]#[root@git Dosier_Project]# git reflog								#git reflog命令可以看到你所有的版本已经回退版本的记录ae2c1b8 HEAD@{0}: reset: moving to ae2c1b8
beff2ea HEAD@{1}: reset: moving to beff2ea
72cd563 HEAD@{2}: commit: Add dossier_3.sh
beff2ea HEAD@{3}: commit: modified dossier_1.sh,add dossier_2.sh
ae2c1b8 HEAD@{4}: commit (initial): Add dossier_1.sh[root@git Dosier_Project]# git reset --hard 72cd563					#为了后面实验,现在还是回退到版本3吧HEAD is now at 72cd563 Add dossier_3.sh[root@git Dosier_Project]# ll 										#已经回退到版本3了total 12-rw-r--r-- 1 root root 35 Jan 31 18:44 dossier_1.sh
-rw-r--r-- 1 root root 15 Jan 31 18:44 dossier_2.sh
-rw-r--r-- 1 root root 15 Jan 31 18:44 dossier_3.sh[root@git Dosier_Project]#

9.git Reset HEAD 파일을 임시 저장 영역에서 실행 취소하고 git rm을 통해 임시 저장 영역에 제출하세요.
[root@git Dosier_Project]# echo "testesshfkshdsjdhjshka" >> dossier_3.sh [root@git Dosier_Project]# cat dossier_3.shI am dossier_3
testesshfkshdsjdhjshka[root@git Dosier_Project]# git checkout -- dossier_3.sh				#撤销文件修改,注意命令--后面是空格接文件名[root@git Dosier_Project]# cat dossier_3.sh            				#已经撤销成功I am dossier_3[root@git Dosier_Project]#

추천 학습:

Linux 비디오 튜토리얼

위 내용은 리눅스에 git을 설치하는 명령어는 무엇인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.