• git使用


    目录

    1、初始化本地仓库命令

    2、设置签名

    3、查看工作区、暂存区状态

    4、将工作区中添加或者修改过的文件添加到暂存区

    5、把暂存区文件提交到本地仓库形成历史记录

    6、添加远端仓库地址到本地仓库

    7、模拟新入职人员开发流程

    8、跨团队开发

    9、SSH免密登陆

    10、分支开发

    11.本地文件删除和找回

    找回本地库中被删除的文件

    添加到暂存区的删除文件找回

    比较文件差异


    1、初始化本地仓库命令

    git init (项目根目录下出现一个.git文件 .git文件存放的是本地库相关的子目录和文件,不要胡乱修改,也不要删除)

    2、设置签名

    干什么的

    用于区分不同开发人员的身份,注意与代码托管中心的密码账号没有任何关系

    格式

    用户名: lph

    Email地址:lph@qq.com

    命令

    用户级别(仓库级别) :(当前项目下创建,签名信息保存的位置当前目录git中的config中,仅当前项目范围内起作用)命令如下

    git config user.name lph_pro
    git config user.email lphluck_pro@139.com

    系统级别:登陆当前系统的用户范围,签名及信息保存的位置

    注意:

    *用户级别和系统级别中两必须有一个,就近原则,项目级别优先于系统用户级别

    *一般项目中有一个就行,系统的就可以

    3、查看工作区、暂存区状态

    4、将工作区中添加或者修改过的文件添加到暂存区

    git add 文件名

    所有的文件添加到暂存区 gti add .

    从暂存区中删除 git rm --cached test.txt

    5、把暂存区文件提交到本地仓库形成历史记录

    git commit -m "first commit"

    查看历史提交记录

    git log

    另外几种查看记录的命令

    6、添加远端仓库地址到本地仓库

    登录仓库平台(coding、github、gitee)创建一个项目仓库不建议生成readme以及gitagnore,复制https地址,地址太长了 起个别名,通常默认的远程仓库地址叫origin

    git remote add origin https://github.com/xxx/xxx.git

    1. 推送到远程仓库 origin代表上面的地址

    git push -u origin master

    1. 代码有改变之后
    git add
    git commit
    # 推送到远程仓库 推送的时候如果不改变远程仓库和分支的话就直接
    git push
    # 如果推送的远程仓库或是分支改变了
    $ git push -u 远程仓库 分支名称

    备注

    1、关于git push -u origin master

    其实完整写法如下 将本地master推到远程master

    git push --set-upstream https://github.com/xxx/xx.git master:master

    因为给地址https://github.com/xxx/xx.git起了别名origin可以用别名

    --set-upstream表示记住这次提交路径 是到master 下次就直接git push 不再git push --set-upstream https://github.com/xxx/xx.git master:master

    而--set-upstream可简写为-u

    本地master推到远程master:master可以简写master

    所以最终是

    git push -u origin master

    2、管理远程仓库地址信息

    # 查看使用帮助
    git remote --help
    # 查看所有的远程仓库信息
    git remote -v
    # 添加远程仓库地址信息
    git remote add 名称 远程仓库地址
    # 删除指定的远程仓库信息
    git remote remove 名称
    # 修改远程仓库地址信息
    git remote set-url 远程仓库地址名称 新地址

    7、模拟新入职人员开发流程

    git clone 项目地址 将项目克隆到本地,并且同时初始化当前目录为git 目录

    git add .

    git commit

    git push 将修改的代码推到远程

    说明:如果没有弹出窗口,是因为windos系统有个web凭证管理,

    原因是当前这个用户没有加入到团队中,所有push推动出错

    所以在GitHub中要邀请当前这个用户加入团队

    然后当前这个团队成员就可以重新提交了

    Pull拉去操作

    第一种先fetch然后merge

    看好之后如果文件没有啥问题再进行合并

    第二种直接使用pull

    为了保险,使用第一种,简单的使用第二种就行

    解决协同开发冲突

    如果不是基于github远程库最新版所做修改该 ,不能推送 必须先拉去,拉去下来如果有冲突先解决冲突,然后操作推送即可

    8、跨团队开发

    当收到发送的连接,然后进行一下操作

    然后东方不被可以克隆文件到本地 做了修改并且推到东方不被远程仓库,接下来

    至此团队外的一个帮手任务已经做完了,下面就是团队中的岳不群的操作了

    9、SSH免密登陆

    进入项目目录删除.ssh目录

    rm –rvf .ssh

    运行生成.ssh密钥目录

    $ ssh-keygen -t rsa -C lphluck@163.com

    注意:C大写

    进入ssh目录

    cd .ssh

    查看内容

    ll

    cat id_rsa.pub

    复制内容 登陆github

    服务器上的工作完成了

    注意:上面的ssh地址如下图获取

    10、分支开发

    一般开发前都是先创建一个分支,基于这个分支开发开发当前功能,开发完成之后合并到master

    创建一个分支,并且换到创建的分支

    //创建一个user分支 并且切换到user
    git checkout -b user

    查看当前分支 带星号就是当前所处分支

    $ git branch
      master
    * user
    

    切换到指定分支,比如主分支

    git checkout master

    合并分支

    把user分支合并到当前所处分支

    git merge user

    11.本地文件删除和找回

    Git前进或者后退到指定版本的本质是对指针head的操作

    基于索引值操作(推荐)

    基于^操作:只能后退

    一个^表示后退一步

    基于~操作:

    Reset后面的三个参数的对比

    -soft仅仅是移动HEAD指针

    -mixed移动指针并且重置暂存区

    -hard移动HEAD指针,重置缓存区,重置工作区

    找回本地库中被删除的文件

    已经对demo.txt文件执行了git commit 操作,然后rm demo.txt文件 从工作区删除了

    虽然上面的文件被删除了,但是git对应的每个版本的文件是不会删除的,所以可以找回删除之前的一个版本的文件

    同样如果进入删除时候的版本,当前文件也就不存在

    添加到暂存区的删除文件找回

    比较文件差异

    第一种比较命令:Git diff 文件名

    比较的是工作区和暂存区中的文件区别

    第二种比较命令:git diff 历史版本文件名

    将工作区中的文件和历史记录中的文件进行比较

    第三种比较命令:不写文件名比较多个文件

  • 相关阅读:
    【MYSQL】数据类型
    【Linux修炼】1.常见指令(上)
    [同向滑动窗口] 209. 长度最小的子数组 713. 乘积小于 K 的子数组 3. 无重复字符的最长子串
    word文档删除了还能找回来吗?这里分享可行方法
    Windows server 安装和配置PostgreSQL 14
    【JS高级】ES6_箭头函数、for of的简谈与应用_13
    分型+预后模型多层面验证,干湿结合直达7+
    深入理解 python 虚拟机:原来虚拟机是这么实现闭包的
    唐山盐碱滩成渤海明珠 国稻种芯·中国水稻节:河北曹妃甸大米
    Linux —— OpenCv编译安装
  • 原文地址:https://blog.csdn.net/qq_34491508/article/details/125515033