찾다
웹 프론트엔드HTML 튜토리얼git语言_html/css_WEB-ITnose

安装完成后,需要进一步设置用户名和email。因为git是分布式版本控制工具,因此需要每台开发机自报家门。

$ git config --global user.name "Your Name"$ git config --global user.email "email@example.com"

其中--global表示将设置内容配置到全局,这样整个系统的用户都应用这个设置。后面我们还将介绍直接在配置文件中设置的方法。

git的各种命令

git init - 初始化版本库
git add - 将增加或修改内容放到暂存库
git commit - 提交暂存库的内容
git status - 查看状态
git diff - 比较两次版本的不同
git log - 查看版本日志
git reflog - 查看执行的命令日志
git reset - 回退历史版本
git rm - 从版本库中删除
git checkout - 切换分支
git branch - 创建或查看分支
git merge - 合并分支
git stash - 存储工作区
git tag - 创建或查看标签
git remote - 查看远程版本库的名称
git push - 推送本地库版本到远程库
git pull - 从远程库拉取到本地库
git clone - 从远程或本地克隆版本库到指定位置

将空目录或者有内容的目录加入到git版本控制器中,由git来跟踪并管理。

git init

命令执行完后,会在当前目录下生成一个.git的目录,该目录是隐藏的。这个目录不能轻易改动,里面保存着所有的git配置。

git add

将增加或修改的文件保存到暂存库中。

git add [文件]

将所有改动的文件都存放到暂存库。

git add -A

git commit

将暂存区的内容提交到版本库。每次提交都必须将提交的注释加上。

git commit -m "注释" 

如果文件的修改或删除没有通过add或rm放入暂存区,也可以通过加入-a的参数直接提交。(增加必须通过add加入暂存区)

git commit -a -m "注释"

git status

查看文件有没有被修改的状态,无论文件是否放入暂存区,只要git监控到文件增加、修改、删除,都可以使用该命令来查看。

git status

git diff

比较未提交到暂存区的修改和上个版本的差别。

git diff [文件]

比较所有提交到暂存区的文件。

git diff

git log

查看操作日志,记录所有提交后的版本信息。可以根据日志信息回退到指定的版本。

git log

查看分支合并图

git log --graph
格式化显示效果

$ git log --graph --pretty=oneline --abbrev-commit

git reflog

查看所有执行的命令历史。

git reflog

git reset

回退历史版本。如果执行提交后又反悔了,可以通过该命令进行回退。

回退到当前版本,比如放弃当前未提交的修改。

git reset --hard head

如果要回退上一个版本,则改成

git reset --hard head~1

head~后面跟数字,表示回退到从当前版本往回数第几个版本。

也可以指定回退到某一个版本。首先通过git log,查看版本的id号,再根据id号来回退。id号可只写前四位。

git reset --hard [id]

git rm

删除文件有两种方式

  1. 直接从文件夹中删除,但是版本库中并没有被删,如果需要提交版本库就要用到git rm,再使用git commit提交。

  2. 使用git rm删除,文件会从版本库和工作区都删除,然后使用git commit提交。

用法:

git rm [文件]

git checkout

切换分支。

git checkout [分支名称]

创建并切换到该分支。

git checkout -b [分支名称]

git branch

查看分支。

git branch

创建分支。

git branch [分支名称]

删除分支。

git branch -d [分支名称]

如果删除的分支没有被合并,需要进行强制删除。

git branch -D [分支名称]

git merge

快速合并,直接改变合并分支的指针。如果合并的分支间有冲突,则需要手动解决冲突后再提交。git merge [合并的分支名称]

快速合并分支后,如果删除分支则日志记录中不会记录分支合并的操作。如果希望能记录分支合并的操作,则需要禁用快速合并。

git merge --no-ff

git stash

存储当前工作区。如果任务进行到一半,需要解决其他版本的问题,比如修复BUG。当前进行的操作可暂时保存下来,解决问题再恢复。

git stash

查看所有保存的工作现场。

git stash list

恢复保存的工作现场。git stash apply [工作现场名称]

恢复后删除工作现场
git stash drop [工作现场名称]

恢复最后保存的工作现场并同时删除

git stash pop

git tag

给最新的版本加上标签。

git tag [标签号]

给历史版本加上标签。版本id可以通过git log查看。

git tag [标签号] [版本id]

创建带有说明的标签。git tag -a [标签号] -m "标签说明" [版本id]

删除标签。

git tag -d [标签号]

远程仓库

如果不想搭建自己的git服务器,可以选择使用Github。这个网站就是提供Git仓库托管服务的,所以,只要注册一个GitHub账号,就可以免费获得Git远程仓库第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这

目录下有没有idrsa和idrsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:

$ ssh-keygen -t rsa -C [你的email]

如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有idrsa和idrsa.pub两个文件,这两个就是SSH Key的秘钥对,idrsa是私钥,不能泄露出去,idrsa.pub是公钥,可以放心地告诉任何人。第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:

然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容。

当然,GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。添加远程库

现在的情景是,你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举多得。首先,登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库。

在Repository name填入learngit,其他保持默认设置,点击“Create repository”按钮,就成功地创建了一个新的Git仓库。目前,在GitHub上的这个learngit仓库还是空的,GitHub告诉我们,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库。git remote

通过git remote命令关联远程库。

git remote add origin [你的github地址]

查看远程库信息git remote -v

git push

将本地库提交到远程库git push origin [分支名称]或
git push origin -u [分支名称]

由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时可以简化命令。git

pull

如果向远程库推送失败,有可能远程库已有新版本导致冲突,那么需要使用git pull从远程库将新版本拉取到本地,手动解决后再推送。

git pull    

如果pull也失败,有可能没有与远程库关联,下面是关联方法:git branch --set-upstream [分支名称] origin/[分支名称]

远程克隆git clone如果远程已有库,可以通过git clone将远程库的内容克隆到本地。

git clone [你的git地址]

从远程克隆下来的项目只能看到master分支,如果要抓取其他分支可以使用git checkout。git checkout -b dev1 origin/dev1

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
공식 계정 웹 페이지의 캐싱 업데이트에 어려움 : 버전 업데이트 후 사용자 경험에 영향을 미치는 이전 캐시를 피하는 방법은 무엇입니까?공식 계정 웹 페이지의 캐싱 업데이트에 어려움 : 버전 업데이트 후 사용자 경험에 영향을 미치는 이전 캐시를 피하는 방법은 무엇입니까?Mar 04, 2025 pm 12:32 PM

공식 계정 웹 페이지 업데이트 캐시, 이것은 간단하고 간단하며 냄비를 마시기에 충분히 복잡합니다. 공식 계정 기사를 업데이트하기 위해 열심히 노력했지만 사용자는 여전히 기존 버전을 열었습니까? 이 기사에서는이 뒤에있는 비틀기와 회전을 살펴 보고이 문제를 우아하게 해결하는 방법을 살펴 보겠습니다. 읽은 후에는 다양한 캐싱 문제를 쉽게 처리 할 수있어 사용자가 항상 가장 신선한 콘텐츠를 경험할 수 있습니다. 기본 사항에 대해 먼저 이야기 해 봅시다. 액세스 속도를 향상시키기 위해 브라우저 또는 서버는 일부 정적 리소스 (예 : 그림, CSS, JS) 또는 페이지 컨텐츠를 저장합니다. 다음에 액세스 할 때 다시 다운로드하지 않고도 캐시에서 직접 검색 할 수 있으며 자연스럽게 빠릅니다. 그러나 이것은 또한 양날의 검입니다. 새 버전은 온라인입니다.

HTML5 양식 유효성 검사 속성을 사용하여 사용자 입력을 유효성있게하려면 어떻게합니까?HTML5 양식 유효성 검사 속성을 사용하여 사용자 입력을 유효성있게하려면 어떻게합니까?Mar 17, 2025 pm 12:27 PM

이 기사에서는 브라우저에서 직접 사용자 입력을 검증하기 위해 필요한, Pattern, Min, Max 및 Length 한계와 같은 HTML5 양식 검증 속성을 사용하는 것에 대해 설명합니다.

HTML5의 크로스 브라우저 호환성에 대한 모범 사례는 무엇입니까?HTML5의 크로스 브라우저 호환성에 대한 모범 사례는 무엇입니까?Mar 17, 2025 pm 12:20 PM

기사는 HTML5 크로스 브라우저 호환성을 보장하기위한 모범 사례에 대해 논의하고 기능 감지, 점진적 향상 및 테스트 방법에 중점을 둡니다.

웹 페이지의 PNG 이미지에 뇌졸중 효과를 효율적으로 추가하는 방법은 무엇입니까?웹 페이지의 PNG 이미지에 뇌졸중 효과를 효율적으로 추가하는 방법은 무엇입니까?Mar 04, 2025 pm 02:39 PM

이 기사는 CSS를 사용한 웹 페이지에 효율적인 PNG 테두리 추가를 보여줍니다. CSS는 JavaScript 또는 라이브러리에 비해 우수한 성능을 제공하며, 미묘하거나 눈에 띄는 효과를 위해 테두리 너비, 스타일 및 색상 조정 방법을 자세히 설명합니다.

& lt; datalist & gt의 목적은 무엇입니까? 요소?& lt; datalist & gt의 목적은 무엇입니까? 요소?Mar 21, 2025 pm 12:33 PM

이 기사는 HTML & LT; Datalist & GT에 대해 논의합니다. 자동 완성 제안을 제공하고, 사용자 경험을 향상시키고, 오류를 줄임으로써 양식을 향상시키는 요소. 문자 수 : 159

& lt; Progress & Gt의 목적은 무엇입니까? 요소?& lt; Progress & Gt의 목적은 무엇입니까? 요소?Mar 21, 2025 pm 12:34 PM

이 기사는 HTML & lt; Progress & Gt에 대해 설명합니다. 요소, 그 목적, 스타일 및 & lt; meter & gt의 차이; 요소. 주요 초점은 & lt; progress & gt; 작업 완료 및 & lt; meter & gt; Stati의 경우

html5 & lt; time & gt; 의미 적으로 날짜와 시간을 나타내는 요소?html5 & lt; time & gt; 의미 적으로 날짜와 시간을 나타내는 요소?Mar 12, 2025 pm 04:05 PM

이 기사는 html5 & lt; time & gt; 시맨틱 날짜/시간 표현 요소. 인간이 읽을 수있는 텍스트와 함께 기계 가독성 (ISO 8601 형식)에 대한 DateTime 속성의 중요성을 강조하여 Accessibilit를 향상시킵니다.

& lt; meter & gt의 목적은 무엇입니까? 요소?& lt; meter & gt의 목적은 무엇입니까? 요소?Mar 21, 2025 pm 12:35 PM

이 기사는 HTML & lt; meter & gt에 대해 설명합니다. 범위 내에 스칼라 또는 분수 값을 표시하는 데 사용되는 요소 및 웹 개발의 일반적인 응용 프로그램. & lt; meter & gt; & lt; Progress & Gt; 그리고 Ex

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경