git的基本使用-1
1、git的安装
这里只介绍在 Linux 上安装。
如果你想在 Linux 上用二进制安装程序来安装 Git,可以使用发行版包含的基础软件包管理工具来安装。
如果以 Fedora 上为例,你可以使用 yum:
$ sudo yum install git
如果你在基于 Debian 的发行版上,请尝试用 apt-get:
$ sudo apt-get install git
要了解更多选择,Git 官方网站上有在各种 Unix 风格的系统上安装步骤,网址为 http://git-scm.com/download/linux。
2、git的使用
2.1 git的配置文件介绍
既然已经在系统上安装了 Git,你会想要做几件事来定制你的 Git 环境。 每台计算机上只需要配置一次,程序升级时会保留配置信息。 你可以在任何时候再次通过运行命令来修改它们。
Git 自带一个 git config
的工具来帮助设置控制 Git 外观和行为的配置变量。 这些变量存储在三个不同的位置:
/etc/gitconfig
文件: 包含系统上每一个用户及他们仓库的通用配置。 如果使用带有--system
选项的git config
时,它会从此文件读写配置变量。~/.gitconfig
或~/.config/git/config
文件:只针对当前用户。 可以传递--global
选项让 Git 读写此文件。当前使用仓库的 Git 目录中的
config
文件(就是.git/config
):针对该仓库。
每一个级别覆盖上一级别的配置,所以 .git/config
的配置变量会覆盖 /etc/gitconfig
中的配置变量。
在 Windows 系统中,Git 会查找 $HOME
目录下(一般情况下是 C:\Users\$USER
)的 .gitconfig
文件。 Git 同样也会寻找 /etc/gitconfig
文件,但只限于 MSys 的根目录下,即安装 Git 时所选的目标位置。
2.2 配置使用git的账户信息
当安装完 Git 应该做的第一件事就是设置你的用户名称与邮件地址。 这样做很重要,因为每一个 Git 的提交都会使用这些信息,并且它会写入到你的每一次提交中,不可更改:
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
再次强调,如果使用了 --global
选项,那么该命令只需要运行一次,因为之后无论你在该系统上做任何事情, Git 都会使用那些信息。 当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有 --global
选项的命令来配置。
很多 GUI 工具都会在第一次运行时帮助你配置这些信息。
2.3 配置文本编辑器
既然用户信息已经设置完毕,你可以配置默认文本编辑器了,当 Git 需要你输入信息时会调用它。 如果未配置,Git 会使用操作系统默认的文本编辑器,通常是 Vim。 如果你想使用不同的文本编辑器,例如 Emacs,可以这样做:
$ git config --global core.editor emacs
2.4 如何检查已配置信息
如果想要检查你的配置,可以使用 git config --list
命令来列出所有 Git 当时能找到的配置。
$ git config --list
user.name=John Doe
user.email=johndoe@example.com
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto
...
你可能会看到重复的变量名,因为 Git 会从不同的文件中读取同一个配置(例如:/etc/gitconfig
与 ~/.gitconfig
)。 这种情况下,Git 会使用它找到的每一个变量的最后一个配置。
你可以通过输入 git config <key>
: 来检查 Git 的某一项配置
$ git config user.name
John Doe
2.5 获取git帮助
若你使用 Git 时需要获取帮助,有三种方法可以找到 Git 命令的使用手册:
$ git help <verb>
$ git <verb> --help
$ man git-<verb>
例如,要想获得 config 命令的手册,执行
$ git help config
2.6 配置ssh公钥
如果不配置公钥,那么在你每次使用git向服务器提交文件时,都会提示输入用户名和密码,特别麻烦。
查看home目录下是否有.ssh目录,一般情况是没有的,需要我们敲命令生成这个目录,在终端输入
ssh-keygen –t rsa -C "youremail@example.com"
邮箱就是刚刚第二步设置的。然后一路按回车,其实就是不设置密码。然后你就会看到home目录下
多了.ssh目录。
进入.ssh目录你会看到两个文件id_rsa和id_rsa.pub,id_rsa是私钥,id_rsa.pub自然就是公钥啦。
然后我们需要做的就是把id_rsa.pub文件中的内容拷贝一下。
通过输入 cat id_rsa.pub, 拷贝随后下方出现的内容.
进入你自己的github,进入头像下的Settings->SSH and GPG keys->New SSH key,
然后在Key那栏下面将第四步拷贝的东西粘贴进去就可以了,最后点击Add SSH key按钮添加。
大功告成,这样你在git push的时候就不需要每次输入用户名和密码了。
2.7 建立 Git 仓库
有两种取得 Git 项目仓库的方法。 第一种是在现有项目或目录下导入所有文件到 Git 中; 第二种是从一个服务器克隆一个现有的 Git 仓库。
在现有目录中初始化仓库
如果你打算使用 Git 来对现有的项目进行管理,你只需要进入该项目目录并输入:
$ git init
该命令将创建一个名为 .git
的子目录,这个子目录含有你初始化的 Git 仓库中所有的必须文件,这些文件是 Git 仓库的骨干。
但是,在这个时候,我们仅仅是做了一个初始化的操作,你的项目里的文件还没有被跟踪。 (参见 Git 内部原理 来了解更多关于到底 .git
文件夹中包含了哪些文件的信息。)
如果你是在一个已经存在文件的文件夹(而不是空文件夹)中初始化 Git 仓库来进行版本控制的话,你应该开始跟踪这些文件并提交。
你可通过 git add
命令来实现对指定文件的跟踪,然后执行 git commit
提交:
$ git add *.c
$ git add LICENSE
$ git commit -m 'initial project version'
稍后我们再逐一解释每一条指令的意思。 现在,你已经得到了一个实际维护(或者说是跟踪)着若干个文件的 Git 仓库。
克隆现有的仓库
如果你想获得一份已经存在了的 Git 仓库的拷贝,比如说,你想为某个开源项目贡献自己的一份力,这时就要用到 git clone
命令。
如果你对其它的 VCS 系统(比如说Subversion)很熟悉,请留心一下你所使用的命令是"clone"而不是"checkout"。
这是 Git 区别于其它版本控制系统的一个重要特性,Git 克隆的是该 Git 仓库服务器上的几乎所有数据,而不是仅仅复制完成你的工作所需要文件。
当你执行 git clone
命令的时候,默认配置下远程 Git 仓库中的每一个文件的每一个版本都将被拉取下来。
事实上,如果你的服务器的磁盘坏掉了,你通常可以使用任何一个克隆下来的用户端来重建服务器上的仓库(
虽然可能会丢失某些服务器端的挂钩设置,但是所有版本的数据仍在,详见 在服务器上搭建 Git )。
克隆仓库的命令格式是 git clone [url]
。 比如,要克隆 Git 的可链接库 libgit2,可以用下面的命令:
$ git clone https://github.com/libgit2/libgit2
这会在当前目录下创建一个名为 “libgit2” 的目录,并在这个目录下初始化一个 .git
文件夹,从远程仓库拉取下所有数据放入 .git
文件夹,
然后从中读取最新版本的文件的拷贝。 如果你进入到这个新建的 libgit2
文件夹,你会发现所有的项目文件已经在里面了,
准备就绪等待后续的开发和使用。 如果你想在克隆远程仓库的时候,自定义本地仓库的名字,你可以使用如下命令:
$ git clone https://github.com/libgit2/libgit2 mylibgit
这将执行与上一个命令相同的操作,不过在本地创建的仓库名字变为 mylibgit
。
Git 支持多种数据传输协议。 上面的例子使用的是 https://
协议,不过你也可以使用 git://
协议或者使用 SSH 传输协议,
比如 user@server:path/to/repo.git
。 在服务器上搭建 Git 将会介绍所有这些协议在服务器端如何配置使用,以及各种方式之间的利弊。
转载于:https://www.cnblogs.com/laofang/p/10912105.html
git的基本使用-1相关推荐
- 从命令行到IDE,版本管理工具Git详解(远程仓库创建+命令行讲解+IDEA集成使用)
首先,Git已经并不只是GitHub,而是所有基于Git的平台,只要在你的电脑上面下载了Git,你就可以通过Git去管理"基于Git的平台"上的代码,常用的平台有GitHub.Gi ...
- 【阶段小结】协同开发——这学期的Git使用小结
[阶段小结]协同开发--这学期的Git使用小结 一.Git简介 1. Git简单介绍 2. Git工作流程以及各个区域 3. Git文件状态变化 二.Git安装&Git基本配置 三.个人踩坑 ...
- Github配置(git+vscode+python+jupyter)
①下载git 打开 git bash 工具的用户名和密码存储 $ git config --global user.name "Your Name" $ git config -- ...
- git shanchu stash_git stash用法
常用git stash命令: (1)git stash save "save message" : 执行存储时,添加备注,方便查找,只有git stash 也要可以的,但查找时不 ...
- 项目中使用 Git 高频场景
1. 拉取最新主干代码,进行功能迭代或 bug 修复 首先切换到主干: git checkout master 然后拉取最新代码: git pull 基于 master 创建本地分支 xxx: git ...
- Git 错误提交后该如何回滚操作
1. Git 架构 Workspace:工作区(当前用户操作修改的区域) Index / Stage:暂存区 (add 后的区域) Repository:仓库区或本地仓库(commit 后的区域) R ...
- Git 最全命令总结都在这里了
1. 基本命令 git diff 不加参数直接输入 git diff : 尚未暂存的文件更新了哪些部分 git diff --staged : 已暂存文件与最后一次提交的文件差异 git diff - ...
- 手把手教你搭建 Git 服务器
https://gitbook.cn/books/5e81adf58d6af944d1f26356/index.html 1. 服务器端安装 Git 切换至 root 账户: su root 看一下服 ...
- Git 常用操作(6)- 推送到远程仓库(git push)删除远程分支(git push origin --delete)
1. git remote add--添加远程仓库 在GitHub 上创建的仓库路径为 "git@github.com:用户名/git-tutorial.git".现在我们用git ...
- Git 常用操作(5)- git clone/git checkout -b/git diff/git push/git pull
1. git clone--获取远程仓库 当 git fetch 命令从服务器上抓取本地没有的数据时,它并不会修改工作目录中的内容.它只会获取数据然后 让你自己合并. 然而,有一个命令叫作 git p ...
最新文章
- yii2服务器无法加载文件,yii2查看服务器500错误的方法
- 让学生网络相互学习,为什么深度相互学习优于传统蒸馏模型?| 论文精读
- subplot 真正含义
- 字节跳动如何做教育? | 详解
- 总结SQL Server窗口函数的简单使用
- JavaScript实现递归楼梯问题(带记忆的递归解决方案)算法(附完整源码)
- java中为什么需要常量和变量的区别_Java中常量和最终变量之间的区别?
- php分类程序,PHP无限分类实现程序_PHP教程
- demo连接php,PHP获取网页所有连接的方法(附demo源码下载)
- python+selenium+Firefox+pycharm版本匹配
- Spring下载文件出现:UT010029: Stream is closed
- 金山云服务器e1型,金山云-文档中心-重装系统
- MySql 经纬度查询
- 新天绿色能源与建投国融续签温室气体减排项目协议
- 6个月融资超50亿元,云计算创业团队正做得风生水起?
- #02数据结构练习二
- JS逆向实战8——某网实战(基于golang-colly)
- 转转,敦刻尔克大撤退?
- 《道德经》第五十三章
- css 圆形光晕,CSS实现运动光环