zoukankan      html  css  js  c++  java
  • Git与GitHub

     一、GitHub


    1、GitHub注册地址:https://github.com

      注册第一步完成就会发送邮件验证

    2、进入邮件点击验证,就会跳转GitHub创建仓库:

       

    也可以在GitHub右上角创建仓库

    进入首页

     

    二、Git


     

    GitHub注册并创建好仓库,需要Git来远程操作

    Git下载地址:https://git-scm.com/downloads,点击windows会自动下载对应的版本。

    官网下载很慢的话,可以到软件管家里下载很快

      

    安装git

    1、双击安装程序

    2、点击next

     

    3、选择安装路径,点击next

      

    一路next

      

      

      

      

    新增功能不稳定,点击安装

      

    安装完成:

     Git使用

    Git工作示意图:

    1、电脑中新建一个GitHub目录,在目录中右击Git Bash Here

    2、在Git Bash中输入命令git version,看到版本信息说明安装成功

     

    3、git  --help 查看帮助

     

    4、git init  初始化当前文件夹为版本管理仓库,并且在当前文件夹下创建一个.git隐藏文件、里面为版本管理文件

      

    5、vim  test.py  创建一个test.py文件

      

    6、提交文件到版本库需要2步

    git add  xx    从工作区增加xx文件到暂存区。   git  add*  增加所有文件到暂存区

    git commit  -m  '注释'     从暂存区提交到版本库(一定要注释,SVN可以没有)

     

    提示没有配置用户信息

     7、配置用户信息

    git config --global user.email "you@example.com"
    git config --global user.name "Your Name"

    配置git用户名与GitHub账户可以不一致,如果一致的话可以在GitHub仓库中直接点击账户可以链接进入GitHub账户首页

    不一致时就不能点击账户。

     

    8、git status 查看状态后提示未提交

     git commit  -m  '注释'   提交至版本库

     修改文件撤回的几种情况

    1、在工作区修改test.py 文件后突然想撤销

    根据提示命令git restore xx文件

     

    2、提交到暂存区突然想撤回修改

    先从暂存区打回到工作区,在工作区撤销

    查看状态时:红色的代表文件在工作区(不具备版本管理,工作区修改的文件未git add,状态为红色),

          绿色的代表文件在暂存区(暂存区具备版本管理,git add 后的文件就被跟踪了。)

          版本库具备永久记录历史版本功能

       

    3、提交到版本库了,不能回到工作区撤销,可以回到某个版本

    git log 查看版本记录

    git reset --hard 117d5c  回到某个版本号

     git reset --hard HEAD^^^  回到上上上个版本号

    git reflog   版本号没了,可以通过操作的版本信息记录来找到

       

     配置秘钥与GitHub远程空仓库连接,并推送文件

    1、执行命令   ssh-keygen -t rsa -C “you@example.com”,按三次回车

     2、进入/c/Users/Lenovo/.ssh/id_rsa.pub复制公钥

       

    3、配置秘钥:

    GitHub→Setting→SSH and GPG Keys →new SSH Key →Title任意取

     

     4、验证秘钥配置成功:

    ssh -T git@github.com

     

    5、推送到GitHub远程创建好的空仓库

    首次要先建立ssh桥梁,地址到GitHub上复制(不是克隆的本地版本库与远程仓库名称也不一致需要增加连接名称,以方便后面使用)

    git remote add orgin git@github.com:xx用户/helloworld.git

    git remote 查看连接名称

    git remote -v 查看连接远程服务器详细地址

    git push orgin master  推送到远程仓库主支(克隆的版本库直接使用git push命令)

     

    GitHub上看到代码推送上去了

     如果GitHub创建仓库时添加了README,就会推送不成功,需要先pull到本地工作区,再push(保存文件同步一致)

    git pull orgin master  

     

    克隆远程GitHub仓库到本地

    ——建议刚开始就先把远程GitHub仓库克隆到本地,保持本地目录名与远程仓库名一致。这种操作方式比先建本地版本库,

    再连接远程地址要好用。比如推送时直接git push,不需加origin master;而且本地修改后可直接push,不要先pull

    1、git clone xx地址到GitHub上复制

    并且在本地hellowrld文件夹里面有个.git版本控制隐藏文件

    添加1.txt文件并推送远程仓库

     

    2、添加2.txt文件推送到远程仓库,再删除远程仓库2.txt

     

    3、git rm 2.txt 删除直接到暂存区,并推送成功

     

    4、万一不想删除2.txt,想通过版本回退方式撤销已经push到远程仓库的操作。需要加一个参数--force

      先在本地执行版本回退:git log  查看版本记录

                 git reset --hard 5cf337   回到上个版本

    黄色部分提示本地版本落后远程仓库版本

    强制覆盖远程仓库的版本信息,使远程仓库也回到响应的版本:git push --force 

    本地查看git log也没有此版本后的版本信息了。

       

    添加忽略文件不上传到远程仓库

     1、在文件夹中直接添加a.png   dd/dd1.txt   tt/tt1.txt

     

     2、通过git bash 添加.gitignore 文件,并将a.png 和dd/dd1.txt 添加到.gitignore中。查看状态就不会显示隐藏文件a.png  和dd/dd1.txt 

          

    3、git add .  命令将所有文件添加到暂存区(包括隐藏文件.gitignore,git add *不能),git push成功,隐藏的文件并没有上传

       

    张三、李四同时 修改文件提交引起冲突,使用merge tools工具合并

    1、李四克隆

    2、张三克隆

    3、李四修改1.txt,增加lisi,并git  push成功

        

    3、张三修改1.txt,增加zhangsan,并git  push,出现报错

       

    4、黄色中提示git pull下来,git pull下来提示Automatic merge failed自动合并失败,需手动去合并。

    5、进入张三本地查看1.txt,发现文本变化

    6、这时可以可以手动修改,也可以通过mergetool合并工具来修改(只能对纯文本)

    命令行输入git mergetool

     

    wq保存4次退出,在本地文件夹中多出一个1.txt.orig备份文件、备份修改之前的内容,可以删了也可以添加到.gitignore 中,然后git bash命令行中重新提交并推送

        

     

     

    更详细git使用:https://www.cnblogs.com/smuxiaolei/p/7484678.html#top

  • 相关阅读:
    洛谷 1339 最短路
    洛谷 1330 封锁阳光大学 图论 二分图染色
    洛谷 1262 间谍网络 Tarjan 图论
    洛谷 1373 dp 小a和uim之大逃离 良心题解
    洛谷 1972 莫队
    洛谷 2158 数论 打表 欧拉函数
    洛谷 1414 数论 分解因数 水题
    蒟蒻的省选复习(不如说是noip普及组复习)————连载中
    关于筛法
    关于整数划分的几类问题
  • 原文地址:https://www.cnblogs.com/charles2018/p/11385794.html
Copyright © 2011-2022 走看看