• git学习笔记1


    git版本控制学习笔记

    跟着大佬混,才发现,我学到的东西简直忒少了,卧槽。。。wsdd
    个人理解,结合github构成一个代码托管平台,可以多人协作
    而git是控制命令。

    现在介绍一下我目前用到的比较多的

    1.git的安装

    在win7系统里面可以从这个网址进行下载 https://git-scm.com/download/win
    是有官网并且免费的,直接下载就好了

    2.配置环境

    这个地方我使用的github的用户名和邮箱

    2.1 配置邮箱和用户名

    $ git config --global user.name "gaowenxin95"
    $ git config --global user.email "your_email@youremail.com"
    

    2.2 生成密钥SSH key

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

    我是敲完命令直接按的回车

    一定要记住密钥生成的位置

    2.3添加密钥(SSH key),并验证是否成功

    注意:密钥可以生成多个,第一次生成的找不到了,那重新生成一个就好了
    添加密钥:将上一步骤生成的密钥即.ssh/id_rsa.pub中内容全部复制。在github的 Settings-->SSH and GPG keys-->New SSH key,key中粘贴复制的内容(Title自定义)。
    验证:github输入第一条的命令,码云输入第二条

    a.ssh -T git@github.com
    b.ssh -T git@gitee.com
    

    3 建立repository

    3.1 创建远程库

    1.远程仓库:在github中New repository 输入Repository name。[例如:project1]
    2.项目工程:在自己本地电脑上新建一个与github新项目工程同名的文件夹。[例如:project1]
    随便起名字,英文并且记住自己建库的地址

    创建版本库

    进入步骤二中的文件夹下,输入以下命令初始化仓库,若出现:Initialized empty Git repository in E:/** /**/.git/ 则表示创建成功[注意:此时会生成一个.git目录(隐藏目录)]

    初始化命令
    git init
    

    3.3连接远程库

    下面的两行命令似乎都可

    git remote add origin git@github.com:yourName/repositoryname.git
    
    git remote add origin https://github.com/yourName/repositoryname.git
    

    4 目前常用的命令

    4.1 git clone

    将远程库克隆到本地一份
    比如我克隆学长的(前提是学长对我开了权限):

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

    过程中可能要输入用户名和密码,反正就是github上面的用户名和密码
    然后在克隆到本地的repository文件下,找到含有.git文件所在的目录,要是看不到扩展名,记得关掉隐藏扩展名的选项
    右击 git bash here

    4.2 git status

    查看对当前项目所有的改动

    4.3 git add .

    对于改动要全部提交到远程(注意空格不要丢)

    4.4 git pull

    从远程仓库pull文件,保证远程库和本地库更新为一致

    4.5 git commit -m “注释”

    这个是用来给提交的东西做注释的,提醒协作者你做了哪些的改动

    4.6 git push origin master

    将全部的修改提交到远程库。

    一、本地操作:

    1.其它

    git init:初始化本地库

    git status:查看工作区、暂存区的状态

    git add :将工作区的“新建/修改”添加到暂存区

    git rm --cached :移除暂存区的修改

    git commit :将暂存区的内容提交到本地库

      tip:需要再编辑提交日志,比较麻烦,建议用下面带参数的提交方法

    git commit -m "提交日志" :文件从暂存区到本地库

    2.日志

    git log:查看历史提交

      tip:空格向下翻页,b向上翻页,q退出

    git log --pretty=oneline:以漂亮的一行显示,包含全部哈希索引值

    git log --oneline:以简洁的一行显示,包含简洁哈希索引值

    git reflog:以简洁的一行显示,包含简洁哈希索引值,同时显示移动到某个历史版本所需的步数

    3.版本控制

    git reset --hard 简洁/完整哈希索引值:回到指定哈希值所对应的版本

    git reset --hard HEAD:强制工作区、暂存区、本地库为当前HEAD指针所在的版本

    git reset --hard HEAD^:后退一个版本  

      tip:一个^表示回退一个版本

    git reset --hard HEAD~1:后退一个版本

      tip:波浪线~后面的数字表示后退几个版本

    4.比较差异

    git diff:比较工作区和暂存区的所有文件差异

    git diff :比较工作区和暂存区的指定文件的差异

    git diff HEAD|HEAD^|HEAD~|哈希索引值 :比较工作区跟本地库的某个版本的指定文件的差异

    5.分支操作

    git branch -v:查看所有分支

    git branch -d <分支名>:删除本地分支

    git branch <分支名>:新建分支

    git checkout <分支名>:切换分支

    git merge <被合并分支名>:合并分支

      tip:如master分支合并 hot_fix分支,那么当前必须处于master分支上,然后执行 git merge hot_fix 命令

      tip2:合并出现冲突

        ①删除git自动标记符号,如<<<<<<< HEAD、>>>>>>>等

        ②修改到满意后,保存退出

        ③git add

        ④git commit -m "日志信息",此时后面不要带文件名

    二、本地库跟远程库交互:

    git clone <远程库地址>:克隆远程库

      功能:①完整的克隆远程库为本地库,②为本地库新建origin别名,③初始化本地库

    git remote -v:查看远程库地址别名

    git remote add <别名> <远程库地址>:新建远程库地址别名

    git remote rm <别名>:删除本地中远程库别名

    git push <别名> <分支名>:本地库某个分支推送到远程库,分支必须指定

    git pull <别名> <分支名>:把远程库的修改拉取到本地

      tip:该命令包括git fetch,git merge

    git fetch <远程库别名> <远程库分支名>:抓取远程库的指定分支到本地,但没有合并

    git merge <远程库别名/远程库分支名>:将抓取下来的远程的分支,跟当前所在分支进行合并

    git fork:复制远程库

      tip:一般是外面团队的开发人员fork本团队项目,然后进行开发,之后外面团队发起pull request,然后本团队进行审核,如无问题本团队进行merge(合并)到团队自己的远程库,整个流程就是本团队跟外面团队的协同开发流程,Linux的团队开发成员即为这种工作方式。

    Refence

    1.https://www.cnblogs.com/zeo-to-one/p/8367801.html
    2.https://my.oschina.net/u/3828037/blog/1838718
    3.https://www.cnblogs.com/convict/p/10795320.html

  • 相关阅读:
    更新增加一个门店ID字段的值
    测试成功,修改能运行代码--待优化
    奶粉运营,跑数据三个模板。
    子查询返回多条报错误
    分析跑数口径与表内在关系逻辑
    NAVICAT PREMIUM 初识
    长沙生活
    金蝶用户操作
    EXCEL对比重复数据
    处理链长期检查问题
  • 原文地址:https://www.cnblogs.com/gaowenxingxing/p/12010148.html
Copyright © 2020-2023  润新知