当前位置:   article > 正文

Git 版本管理_git版本管理

git版本管理

之前代码一直使用 SVN 管理,一直是图形化 界面。新东家 采用的是 Git; 趁早下班 过来学习下;

什么是 Git:

Git  是一个 开源的 分布式版本控制器系统, 可以有效. 高速地处理从 很小到很大的  项目版本管理

Git的特征:

  • 每台电脑都是一个版本库,可以在本地做版本管理
  • 速度快,git的速度远超大部分版本管理系统,包括 SVN
  • 强大的分支管理
  • 活跃的开源社区,如著名的 Github

Git 和 SVN 的区别:

Git  是分布式的, SVN 是中心化的

            

  • SVN 开发者 可以向SVN 服务提交 和  拉取

  • Git 自己本身 就是一个版本; 可以自己给自己本地提交;提交完毕 你可以发送补丁到 主开发者, 同时 也可以和  github  进行代码的同步

Git 与SVN版本机制 不一样

  • SVN  开发者 提交的是 变化

  • Git 提交的时候 提交的整体

Git 不需要联网

  • SVN  开发者 只能提交到 SVN服务器

  • Git    开发者  可以提交到 本地

Git 内容完整性优于 SVN

                         

Git 指令模式:

本地仓库的 创建:

git init  初始化一个本地仓库, 在同级目录下会出现一个隐藏的 .git 文件

配置

查看 配置:  git config -l

        配置:  git config xxx (必须配置 user.name  和 user.email)

  1. E:\worksoft\ASD\git-test>git config user.name 'king'
  2. E:\worksoft\ASD\git-test>git config user.email 'abc@gmail.com'

      

三级文件配置

  • .git/config
  • 当前用户目录/.gitconfig
  • git安装目录/etc/gitconfig

本地提交

  • git add filename  提交到索即缓存没有正式写入文件 (-A 代表全部)
  1. Git add . 和 -A 的区别 (当前目录以及子目录)
  2. . : 把新增的文件 和 修改的文件都加入缓存 库
  3. -A: 把新增的文件 和 修改的文件 和 删除的文件 都加入缓存 库
  • git commit -m  '版本描述'  提交到文件库 
  1. 配合 git add filename 一起使用 写入文件
  2. E:\worksoft\ASD\git-test>git add -A
  3. E:\worksoft\ASD\git-test>git commit -m '测试'
  4. [master 8d14738] '测试'
  5. 1 file changed, 1 insertion(+)
  • git commit -am '版本描述'  一步提交完成
  1. 不用提交缓存 一步提交
  2. E:\worksoft\ASD\git-test>git commit -am '修改脚本'
  3. [master 966d936] '修改脚本'
  4. 1 file changed, 1 insertion(+), 1 deletion(-)

 Git 远程仓库:

gitHub 是一个面向开源 以及 私有软件项目的 托管平台, 因为只  支持 git 作为唯一的版本库 进行托管, 故名 git  与 github 链接需要通过加密通道;一共有两种:

  1. ssh      复杂一点
  2. https    简易一点
  1. 建立代码仓储的 链接
  2. E:\worksoft\ASD\git-test>git remote add enjoy-https https://github.com/kingjames223/enjoy-git.git
  3. 查询链接
  4. E:\worksoft\ASD\git-test>git remote
  5. enjoy-https
  6. //查询链接 详细的信息
  7. E:\worksoft\ASD\git-test>git remote -v
  8. enjoy-https https://github.com/kingjames223/enjoy-git.git (fetch)
  9. enjoy-https https://github.com/kingjames223/enjoy-git.git (push)

 

● clone  克隆

  1. E:\worksoft\ASD\git-test>git clone '远程地址' ‘本地文件名称’
  2. // https 地址 ooxx 文件夹
  3. E:\worksoft\ASD\git-test>git clone https://github.com/kingjames223/enjoy-git.git ooxx
  4. // SSH 方式连接的话 需要生产密码以及对应的证书
  5. E:\worksoft\ASD\git-test>ssh-keygen -t rsa -C abc.gmail.com
  6. Generating public/private rsa key pair.
  7. Enter file in which to save the key (C:\Users\john/.ssh/id_rsa):
  8. Created directory 'C:\Users\john/.ssh'.
  9. Enter passphrase (empty for no passphrase):
  10. Enter same passphrase again:
  11. Your identification has been saved in C:\Users\john/.ssh/id_rsa.
  12. Your public key has been saved in C:\Users\john/.ssh/id_rsa.pub.
  13. The key fingerprint is:
  14. SHA256:Nv31cOQKLH+Sgyg4f+2kxVuv5Hbk5T9swnBei7PndgY abc.gmail.com
  15. The key's randomart image is:
  16. +---[RSA 2048]----+
  17. | |
  18. | |
  19. | .|
  20. | . . o |
  21. | S o o o o|
  22. | . . + * =E*.|
  23. | o . ..= &o*+o|
  24. | o ..+.=.@oB+|
  25. | ....o.o+Xo=|
  26. +----[SHA256]-----+

 

生成了两个文件,  id_rsa.pub  为公钥

● push  推送本地修改至远程 git 文档库

E:\worksoft\ASD\git-test>git push -u enjoy-https master

git 删除本地提交题录:

首先得定位到你的路径:

 

  1. 删除本地提交记录的最后一条或最后N条记录
  2. git reset --hard HEAD~1

删除提交记录中的某几条
1. 使用命令查看提交的记录: git log
2. 找到相应的记录ID
3. 执行命令:git rebase -i 记录ID
4. 进入到一个页面。
5. 使用cw命令将行首的pick替换为drop(注意每完成一个替换操作,需要按下Esc键退出vi的编辑模式)。
6. 检查确认后,按wq保存并退出

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/酷酷是懒虫/article/detail/845449?site=
推荐阅读
相关标签
  

闽ICP备14008679号