Git教程:版本控制入门

什么是Git?


Git是用于代码的版本控制系统(VCS)。它用于跟踪修订,并允许开发人员或开发团队通过分支一起在项目上进行工作。

Git不是GitHub。Git是系统,而GitHub是存储库托管服务(在许多应用程序中最受欢迎)。

Git vs.FTP


您可能已经习惯了文件上传的FTP(文件传输协议)过程。

FTP

本地环境⇋FTP程序⇋Live Server

文件:///用户/您/项目发送/ WinFTPhttps://example.com](https://example.com/)

没有使用版本控制之前使用FTP管理的多,与我们今天使用Git的方式非常相似。

Git

本地环境⇋Git存储库⇋Live服务器

文件:///用户/您/项目GitHub.com ⇋ [https://example.com

当然,这两种方法的箭头都可以朝任何方向移动-上传(推)和下载(拉)。

适用于Mac / Windows的Tower,SourceTree和Github-这些都是GUI或图形用户界面。GUI是一种利用图形创建用户友好体验的程序,例如Windows到MS-DOS。这些程序对于学习很有用,尤其是在团队环境中,但是在本文中,我们将通过命令行完成所有操作。

步骤1:安装


苹果电脑

打开终端程序。键入git --version,然后按Enter。如果返回版本号,则表明已经安装了Git。如果-bash: git: command not found弹出类似的提示,请从App Store 安装Xcode

在XCode中,安装命令行工具:> Preferences > Downloads > Command Line Tools。您现在可以通过终端使用Git。

尽管对于本文的其余部分来说不是必需的,但现在可以先安装Homebrew,它是一种用于简化dev工具的安装和管理的工具

Windows

下载WindowsGit。您将使用Git Bash程序。它将使用与终端相同的所有命令。

步骤2:建立线上Git存放区


GitHub是托管存储库的最受欢迎的,因此,如果没有,请继续在此处注册一个帐户。

我假设您的用户名是you。这将成为您的新GitHub帐户github.com/you

建立帐户后,点击添加新仓库来创建存储库。此时请勿使用README.md或.gitignore进行初始化。我们可以调用存储库项目。您的存储库就会创建github.com/you/project。它应该完全是空的

步骤3:创建本地项目


如果您完全不熟悉命令提示符,请阅读命令行教程

这是最基础的命令,也是您入门所需的全部知识。

基本命令行参考

  • pwd 打印工作目录 –显示您正在使用的确切目录。

  • ls 列出目录 –列出当前目录中的所有文件和文件夹。

  • cd 更改目录 –更改到另一个目录。

  • mkdir 创建目录 -创建一个新目录。

请记住,Terminal(Mac)和Git Bash(Windows)都是命令行外壳。通过两者,任何与Git相关的Shell命令都可以相同。

打开终端时,将在主目录中开始。我将假设您的计算机具有与GitHub帐户相同的用户名。

确认您的位置

pwd

/Users/you

创建一个名为project-local的新文件夹

mkdir project-local

列出你的目录

ls

您应该在目录列表中看到本地项目

移至新创建的目录

cd project-local

现在,您位于本地项目和Git存储库所在的文件夹中。从这里开始,我们将开始使用git命令。Git 有大量命令,但是我们只需要少量命令即可开始。

基本的Git命令参考

  • git config -配置Git

  • git init -初始化Git存储库

  • git status -检查Git储存库的状态

  • git add -添加文件

  • git commit -提交添加文件

  • git push - 上传文件

  • git pull -下载文件

我们现在执行的所有的命令将来仅适用于您本地的Git环境。但是,在执行其他任何操作之前,需要执行一个重要的全局步骤-配置您的Git帐户。

配置您的全局Git帐户。

git config --global user.name “Firstname Lastname”

git config --global user.email username@email.com

确保您仍在项目本地文件夹中,然后继续。

初始化Git存储库。

git init

在/Users/you/project-local/.git/中初始化了空的Git存储库

现在,您的本地计算机上有一个空的Git存储库。

使用我们在github.com上创建的仓库连接本地目录。

git remote add origin https://github.com/you/project

终端没有响应,但是成功了。继续,然后将文件添加到项目本地目录。您可以根据需要添加任意数量的文件,但我假设您添加了两个文件**-index.htmlstyle.css**。

检查本地存储库的状态。

git status

On branch master

Initial commit

Untracked files:

(use “git add …” to include in what will be committed)

index.html

style.css

nothing added to commit but untracked files present (use “git add” to track)

好了,现在它知道目录中有两个文件,但是它们不是Git存储库的一部分。此时,我们必须使用命令来添加文件add

将所有文件添加到仓库中。

(区分大小写的命令!)

git add .

让我们再次使用检查状态git status

On branch master

Initial commit

Changes to be committed:

(use “git rm --cached …” to unstage)

new file: index.html

new file: style.css

那么,现在该做什么呢?文件现在是绿色而不是红色。我们完成好了吗?还不行

将添加的文件提交到master分支

git commit -am “Initial Commit”

[master (root-commit)] Initial

2 files changed, 34 insertions(+)

create mode index.html

create mode style.css

使用此命令,我提交了所有文件(-a),包括一条消息(-m),在此列出(“初始提交”)。此行中的所有内容均为必选。

提交文件时,请不要忘记添加评论。Git中的战略性注释与注释代码一样重要。如果您不小心忘记了添加注释并最终进入无法再输入任何命令的奇怪屏幕,请按ESC :q!键,然后按Enter。

将文件推送到github.com上的Git存储库。

git push origin master

终端将提示您输入GitHub用户名和密码。输入密码时,它可能不会显示您输入了任何内容,但正在输入密码。

现在刷新您的GitHub页面。成功!现在,所有文件都托管在Github.com上!

步骤4:推送到实时服务器


> 我们完全可以使用gitlab搭建私有代码库,如果不用也可以参考下面的方式

我现在假设您在某个主机上可以将文件上传到该主机。GeoCities

通过FTP上传到服务器时,您将具有以下一些设置:

主机:ftp.domain.com 用户名:you 密码:hunter2

您将这些凭据输入到FTP GUI中,然后就可以使用了。SSH(安全外壳)-在命令提示符下,您将使用ssh命令输入主机。主机应通过FTP设置向您显示SSH的设置。

您可以通过同一终端窗口执行所有操作,但为清楚起见,让我们打开一个新的终端窗口(Command + N)。

SSH进入您的主机。

ssh username@ssh.domain.com

系统将提示您输入密码。

现在您进入了!

请记住,当您通过SSH连接到主机时,您现在已连接到该主机!该终端中不再存在您的本地环境。要转义SSH并返回本地终端,请键入,exit然后按Enter。

开启FTP程序,这样您就可以看到主机的文件结构以及所做的更改。每个主机都是不同的。找到wwwroot或公用文件夹,并在远程“终端”窗口中cd找到适当的位置。

现在,在主机目录中的某个位置创建一个新文件夹。您可以随意调用它-它可以匹配GitHub存储库的名称。在这种情况下,我们将其命名为**project-remote,**并假定它是根目录中的文件夹。

进入后,您将执行与之前相同的许多步骤,不过 这次我们将从GitHub.com中(下载),而不是从本地推送(上载)到Github.com。

  • 29
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值