git 安装与使用

1. git简介

git是分布式版本控制系统

2. 如何安装git

2.1 方法一

sudo apt-get install git

2.2 方法二

(1) 从官网下载源码解压
(2) ./config
(3) make
(4) sudo make install

3. 创建版本库:版本库又名仓库,英文repository(可以理解为一个目录,这个目录里的所有文件都可以被Git管理起来。

(1)makedir 目录(仓库)
(2)cd 目录 :为工作空间
(3)git init
(4)ls -ah 有一个.git的文件 : 为版本库
(5)此时:目录为工作空间,.git为

4. 把文件添加到版本库里:

4.1 创建文件:

(1)touch 文件名
(2)git status 查看文件在仓库中的状态,应该为未跟踪

4.2 将文件添加到暂存区

(1)git add 文件名

git add命令用于将文件或目录添加到暂存区(staging area),准备将其包含在下一次提交中。
git add可以在以下几种情况下使用:

  1. 添加新文件:用git add <file>添加新创建的文件到暂存区。例如,git add myfile.txt将myfile.txt文件添加到暂存区。
  2. 添加修改的文件:用git add <file>将对已修改的文件的更改添加到暂存区。例如,git add myfile.txt将对myfile.txt文件的更改添加到暂存区。
  3. 添加所有文件:用git add .或者git add -A添加所有修改、删除和新创建的文件到暂存区。例如,git add .将所有文件添加到暂存区。 一旦文件被添加到暂存区,可以使用git commit`将其提交到本地仓库。

(2) 执行完命令行,其实际上是把文件添加到了暂存区
(3)git status 查看文件在仓库中的状态,可以看到文件已经在暂存区
(4)在执行完(2)后,可以看到,通过 git rm --cached ,可以将已经在暂存区的文件从暂存区移出

将文件提交到本地仓库

(1)git commit -m “本次提交说明”

注:git commit用于将暂存区(staging area)中的文件提交到本地仓库。它会创建一个新的提交(commit),并将提交的内容与一个唯一的标识符关联起来,该标识符被称为提交的哈希值(commit hash)。每个提交都包含了一组文件的快照,可以在需要的时候回滚到特定的提交或查看提交历史。提交还可以包含有关提交者、提交时间和提交信息的元数据。提交是Git的核心概念之一,它使得团队成员可以在分布式开发中共享和同步工作。但它们不会立即在远程仓库中可见。要将提交推送到远程仓库,需要使用 git push 命令

(2)git status 查看文件在仓库中的状态,可以看到暂存区里的文件已经都被提交到版本库了,没有文件需要提交
(3)git log查看当前分支的提交历史,可以看到刚刚提交的哈希值、作者、日期、提交信息等

git log命令用于查看当前分支的提交历史。它会显示提交的信息,包括提交哈希值、作者、日期、提交信息等。
使用git log命令可以查看以下信息:
(1)提交哈希值:每个提交都有一个唯一的哈希值来标识它。这个哈希值可以用于在版本库中定位和引用提交。
(2)作者和提交日期:记录了谁提交了该更改以及何时提交的。
(3)提交信息:提交者提供的关于该更改的描述性信息。
除了显示提交历史,git log命令还支持一些选项来定制输出格式和过滤提交历史。例如,可以使用--pretty选项来指定输出格式,使用--since--until选项来指定时间范围,使用--author选项来过滤某个作者的提交等等。
使用命令git log,会按照从最新到最旧的顺序显示提交历史。如果要退出日志查看,可以按下Q键。

(4) 将git commit的提交,回退到暂存区状态
(5)将git commit的提交,回退到未跟踪状态

5. 版本回退:

(1)git log 显示历史版本的修改记录
(2)git log --pretty=oneline 只显示每条历史记录的第一行
(3)在git中HEAD表示当前版本,HEAD^ 表示上一个版本,HEEAD^^表示上上一个版本,HEAD~100表示往上的100个版本。
(4)git reset --hard HEAD^
git reset --hard HEAD^^
git reset --hard 指定的commit ID
(5) git reflog 来显示历史命令

6. 工作区、暂存区和版本库

(1)工作区:就是仓库目录
(2)暂存区和版本库:
.git:就是git的版本库。
.git目录中的index(stage)为暂存区
.git目录中还有git为我们自动创建的第一个分支master,以及只想master的一个指针HEAD
(3)想远程仓库推送的就是HEAD指针指向的分支指向的内容

7. git管理的是修改

8. 撤销修改:

(1)git checkout --file 可以丢弃工作区的修改
(2)git reset HEAD file 可以把暂存区的修改撤掉(unstage)

9. 删除文件:

(1) git rm file
(2) git commit -m “remove file”
(3) git checkout – file

10. 远程仓库:

(1)创建SSH KEY:ssh-keygen -t rsa -C “youremail” 产生的.ssh目录下的两个文件id_rsa(密钥)和id_rsa.pub(公钥)
(2)登录Github-》打开Account setting-》SSH Keys页面 --》Add SSH Key -》在Key文本框里黏贴id_rsa.pub
(3) 将本地仓库与远程仓库进行关联:git remote add origin git@github.com:你的github用户名/你在github上的仓库
(4)将本地库的所有内容推送到远程库上:git push -u origin master
当出现“Error: src refspec master does not match any – How to Fix in Git”时,解决方案,亲测有效
(5) SSH警告:第一次使用SSH连接,会出现警告。
(6) 从远程克隆:先创建远程库,从远程克隆仓库到本地
git clone git@github.com:你的github用户名/你在github上的仓库
对于克隆出现“ERROR: You‘re using an RSA key with SHA-1, which is no longer allowed”时 ,解决方案,亲测有效

11. 创建与合并分支

(1)创建并切换到新分支:git checkout -b 新分支的名字
(2)创建新分支: git branch 新分支的名字
(3)切换到相应的分之: git checkout 相应分支的名字
(4)将当前HEAD所指的当前分支与指定的分支合并:git merge 指定分支的名字
(5)删除分支:git branch -d 分支的名字

12. 解决冲突:冲突发生后:git status 根据状态提示去手动修改。

13. 多人协作:

(1)查看远程库的信息:git remote
(2)查看远程库的详细信息: git remote -V
(3) 推送分支:git push origin 要推送的分支(4)抓取分支:git clone git@github.com:你的github用户名/你在github上的仓库
(5) 查看分支:git branch
(6) 创建远程分支到本地:git checkout -b 要创建的分支 origin/dev

14. 标签:

(1)创建标签:git tag v1.0(标签)
(2) 查看标签:git tag
(3)查看标签信息:git show 标签名称
(4)删除标签:git tag -d 要删除的标签名称
(5)推送某个标签到远程:git push origin 要推送的标签名称
(6)推送尚未推送的所有本地标签
(7)同时删除本地与远程标签: 先从本地删除:git tag -d 要删除的标签
再从远程删除:git push origin :refs/tags/要删除的远程标签名。

15. 配置别名:git config --global alias.最终的名字 要配置别名的名字

eg:git config --global alias.last ‘log -l’

16. 配置文件:

(1)只对当前仓库起作用的别名在:.git/config
(2) 对当前用户起作用的别名在:~/.gitconfig

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值