Git入门与实践、 Git提交本地文件至远程仓库

本文深入讲解Git版本控制软件,由Linus Torvalds为Linux内核开发所创,涵盖Git的功能、优势、原理及常见使用场景,包括初始化、提交、分支管理等关键操作。

Git概念:Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。linus两周完成架构,两个月开始正式使用。因为是为了管理linux系统所以git都是linux命令的使用,也可以用vim编辑器

git功能 

  • 协同修改
  • 数据备份
  • 版本管理、 管理快照
  • 权限控制
  • 历史记录
  • 分支管理

Git优势

  • 大部分操作在本地完成,不需要联网
  • 完整性保证
  • 尽可能添加数据,而不是删除或修改
  • 分支操纵非常快捷流畅
  • 与linux命令全面兼容

Git原理和流程

1、安装

结构介绍,git在目录文件夹中都会产生一个.git的文件目录,里面都是存放着的git所有配置, 这里配置最好不要去动

2、签名、授权

//使用git生成秘钥
ssh-keygen -t ed25519 -C "ifmiss@dingtalk.com"

c/Users/Tony/.ssh/id_ed25519.pub.
// 查看公钥
cat ~/.ssh/id_ed25519.pub.

3、 常用命令和使用git 提交本地数据至远程仓库

1、git init 初始化本地一个空厂库或者 git  clone  克隆一个远程仓库

git init
git clone http://xxx/xxx.git

2、git pull  将远程仓库的文件同步到本地仓库

3、git status 查看文件状态、修改状态,新增的文件

4、git add file / git add .  将文件添加到缓冲区

5、git commit -m ' 注释 '   将缓冲区的代码同步到本地创库

6、git push 将本地仓库代码同步到远程仓库

 

4、Git用户命令

git config  查看所有配置命令

5、设置git commit时代码的作者

方式一:使用命令方式

git config --global user.name  'huguagnjun'

git config --global user.email 'xxx@163.com'

方式二:使用GUI方式:git gui here >>edit>>options>>设置即可

 

场景1:将本地仓库中的文件全部删除,然后从仓库中从新拉取最新文件

使用git pull 提示:Already up to date
原因:当前本地库处于另一个分支中,需将本分支发Head重置至master
    git checkout master
    git reset -hard
git 强行pull并覆盖本地文件
    git fetch -- all 
    git reset --hard  origin/master
    git pull

场景2、处理git 对话框乱码问题

  • git config --global core.quotepath false

场景3、切换分支

  • git checkout master 切换到master分支
  • git branch 查看当前的分支
  •  

场景4、commit提交后需要撤回

  • git reset --soft HEAD^

  • git reset --hard HEAD~1 //删除工作空间改动代码,撤销commit,撤销git add注意完成这个操作后,就恢复到了上一次的commit状态。 1代表回到1版本状态,2代表回到2的状态

  • git log可以查看版本, 然后可以回滚到指定的版本

场景5、切换分支

  • git checkout -b release-v1.0.0
  • git git branch --set-upstream-to=origin/远程分支的名字 本地分支的名字 将本地分支与远程分支建立关系

场景6、git push 报错问题处理

  • git pull --rebase origin master 执行此命令然后再push

场景7、还原某个时间的分支

  • git log
commit e59a94c6d62833ec1cce222532ce26552fcf0a31
Merge: f96e129 527e72c
Author: 曹杰 <caojie4260@dingtalk.com>
Date:   Sat Aug 1 16:30:50 2020 +0800

    Merge branch 'develop' into 'master'
    
    refactor: 首页和待办菜单布局结构和样式调整。
    
    See merge request lzlj/front-end/app!123

commit 527e72c6a5f91566f682aba75ff693a45f8790c7
Author: caojie <smart_xiao_jie@foxmail.com>
Date:   Sat Aug 1 16:27:24 2020 +0800

    refactor: 首页和待办菜单布局结构和样式调整。
  • git 还原某个时间点
   git reset --hard 527e72c6a5f91566f682aba75ff693a45f8790c7 

Git 小乌龟的安装

 

 

持续更新中。。。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值