让我们来复习一下git

|概述

git是一个分布式版本控制系统,最初是由Linus Benedict Torvalds在2005年以GOL发布。之前在一家准备倒闭的广州外包公司用SVN提交代码,git一些指令快忘了。故在这个热到飞起夜晚写一篇笔记重新记录下;另外详细的git指令还得是看官方文档,我这里只是乱写简单做个笔记。


|创建新仓库&克隆仓库

  1. 应该先检查一下有没有安装git

hezefeng@hezefengdeMac-mini ~ % git version
git version 2.30.0

    2. 新建仓库、进入仓库之后使用git init初始化

已初始化空的 Git 仓库于 /Users/hezefeng/Desktop/gitdemo/.git/
  1. 可以克隆本地或者远程仓库的版本

git clone /path/to/repository
...
git clone username@host:/path/to/repository

|工作流

这里引用一张一看就懂。在git中的工作流中有工作目录(持有实际文件),第二个是缓存区(Index),它像个缓存区域,临时保存你的改动;最后一个是HEAD,指向你最后一次提交的结果。

让我们来复习一下git


|添加到缓存区、提交到HEAD与推送

    这里通过一个demo来演示:

  1. 在已经初始化的文件夹中新建一个index.html文件,用vscode打开的会看到后面有个绿色字母U

让我们来复习一下git

    2. 通过指令 git add index.html,可以发现文件后面有个暗绿色字母A。

    3. 通过指令 git commit -m 'xxxx'将文件从缓存区送至HEAD区。

    4. 如果有改动会发现文件编程M黄色,若直接提交则会提示你需要重新提交内容或丢弃工作区的改动

让我们来复习一下git

位于分支 development
尚未暂存以备提交的变更:
  (使用 "git add ..." 更新要提交的内容)
  (使用 "git restore ..." 丢弃工作区的改动)
        修改:index.html

修改尚未加入提交(使用 "git add" 和/或 "git commit -a")
hezefeng@hezefengdeMac-mini gitdemo % git add index.html 
hezefeng@hezefengdeMac-mini gitdemo % git commit -m '又一次提交' 
[development 0940a6b] 又一次提交
 1 file changed, 1 insertion(+), 1 deletion(-)


|推送到远程仓库


    1. 新建一个属于你的repository

让我们来复习一下git

让我们来复习一下git


    2. 生成然后查询你ssh-key,并在github的setting里设置ssh keys

ssh-keygen -t rsa -C "xxx@xxx.com"  
//执行后查询,并复制那一串东西
cat ~/.ssh/id_rsa.pub

让我们来复习一下git


    3. 关联远程仓库并提交

git remote add origin git@github.com:FengZeHe/123.git(你的远程仓库地址)hezefeng@hezefengdeMac-mini gitdemo % git push origin development枚举对象中: 6, 完成.对象计数中: 100% (6/6), 完成.使用 8 个线程进行压缩压缩对象中: 100% (4/4), 完成.写入对象中: 100% (6/6), 700 字节 | 700.00 KiB/s, 完成.总共 6(差异 1),复用 0(差异 0),包复用 0remote: Resolving deltas: 100% (1/1), done.To github.com:FengZeHe/123.git * [new branch]      development -> development

|分支、分支的更新与合并

我们这时候新建一个分支,叫master分支。在该分支下新建一个index.js和index.css文件。我们的目标是将development分支下的index.html合并到master下。

git checkout master
..
git merge development


|写在最后

    如果文章对你有所帮助,可以搜索公众号 programmerHe 。我在公众号等你。

上一篇:【odoo好书翻译】odoo 14 Development Cookbook【目录篇】


下一篇:vue多环境变量配置