Git基础学习与常用操作

git基础

创建版本库

初始化目录变成Git可以管理的仓库:

git init

把文件t1.txt添加到仓库:

git add t1.txt

把文件提交到仓库

git commit -m "说明注释"
  • 可以多次add,统一commit
  • Git命令必须在Git仓库目录内执行(git init除外),在仓库目录外执行是没有意义的。
  • 添加某个文件时,该文件必须在当前目录下存在,用ls或者dir命令查看当前目录的文件,看看文件是否存在,或者是否写错了文件名。

基础操作

查看仓库状态

git status

查看文件改动内容

git diff t1.txt

查看修改日志

git log

查看简单版修改日志

git log --pretty=oneline

在这里插入图片描述

前面十六进制数据表示的是commit id(版本号)

版本回退

HEAD表示当前版本,上一个版本是HEAD^,上上版本是HEAD^^,或者可以写为HEAD~2

版本回退可以用

git reset --hard HEAD^

返回到最新版本可以用

git reset --hard <版本号前几位(至少四位)或者版本标签>

如果不记得最新的版本号,可以用下面的命令查找历史中自己输入的命令

git reflog

撤销修改

  • 当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令

    git checkout -- file
    

    git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。

  • 当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令

    git reset HEAD <file>
    

    ,就回到了场景1,第二步按场景1操作。

  • 已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

删除文件

  1. git rm t1.txt
    
  2. git commit -m "delete t1.txt"
    

远程仓库

github配置公钥

  1. 创建SSH Key,在用户主目录下,找到.ssh目录(应该是隐藏目录)

    ssh-keygen -t rsa -C "youremail@example.com"
    

    会生成id_rsa id_rsa.pub文件。其中id_rsa是私钥,自己保存;id_rsa.pub是公钥。

  2. 登陆github,打开“Account settings”,“SSH Keys”页面:然后点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容。

添加远程库

创建新仓库
在这里插入图片描述

  1. 将本地仓库与远程仓库关联,远程仓库命名为origin

    git remote add origin git@github.com:zhm-super/gitlearn.git
    
  2. 将本地仓库的内容推送到远程库上,加上-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,便于后续推送简化命令

    git push -u origin master
    
  3. 后续修改可以通过下面的命令将本地master分支的最新修改推送至github

从远程库克隆

git clone <仓库地址>

git clone git@github.com:zhm-super/gitlearn.git

分支管理

创建与合并分支

查看分支

git branch

创建分支

git branch <name>

切换分支

git switch <name>    或     git checkout <name>

创建+切换分支

git switch -c <name>    或    git checkout -b <name>

合并某分支到当前分支

git merge <name>

删除分支

git branch -d <name>

远程推送和抓取

查看远程库

git remote

查看远程库详细信息

git remote -v
推送分支

将本地master分支推送到远程地址为origin的main分支

git push origin master:main
抓取分支

将地址为origin的远程main分支拉取到本地dev分支

git pull origin main:dev

有冲突时,需要用fetch拉取

git fetch origin main:dev

然后再用merge合并解决冲突

git merge dev
使用标签

打标签

git tag -a v1.0 -m "version 1.0"

列出标签

git tag

对之前的提交打标签

git tag -a v1.1 9e510e(版本号前几位)

查看标签的详细信息

git show v1.2

标签需要额外提交

git push origin <tagname>
或一次提交多个
git push origin --tags
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值