zoukankan      html  css  js  c++  java
  • GIT使用笔记

    1、下载git for window
    百度网盘
    2、安装(一路next)
    3、打开
    输入:
    $ git config --global user.name "Your Name" $ git config --global user.email "email@example.com"
    创建使用人
     
    4、创建版本库
    mkdir python-blog 新建一个文件夹
    git init 把这个目录变为可管理的仓库 使用 ls -a 查看
    git status 查看当前版本库状态
    git diff 查看哪些内容做了改动
    git add xxx 将文件加入缓冲区
    git commit -m xxxx 提交修改,-m后面是修改的备注 提交信息
    git log 可以查看版本历史提交记录
    git diff HEAD -- readme.txt命令可以查看工作区和版本库里面最新版本的区别
    windows使用git时出现:warning: LF will be replaced by CRLF
    解决办法:
     
    5、版本回退
    git reset --hard HEAD^ 一个^表示回退到上一个版本 HEAD~N 表示回退到前N个版本
    git reflog 记录了每次的命令
     
    6、撤销修改
    git checkout -- xxx 撤销xxx文件的修改 命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令
    如果已经执行过git add 可以使用 git reset HEAD xxx 将修改从暂存区撤销
     
    7、删除文件
    echo " " > test.txt 创建一个新txt文件
    git rm file 从版本库删除文件
    如果本地工作区删除了文件,但是版本库还有,如果想恢复可以使用 git checkout --file
     
    8、远程仓库
    连接github远程仓库
     
    1、首先创建sshkey
    ssh-keygen -t rsa -C "youremail@example.com" 填入自己的邮箱 然后一路enter
    看下保存的目录下有没有id_rsa和id_rsa.pub这两个文件
    这两个是SSHkey的密钥对id_rsa是私钥,id_rsa.pub是公钥,私钥不能泄漏
    2、登录github 选择setting 找到
    复制公钥里的东西 添加sshkey
    3、登录github 新建一个仓库 它会告诉我们可以远程链接一个仓库 也可以从这个仓库
    克隆出新的仓库
    在本地仓库下使用如下命:
    git remote add origin git@github.com:michaelliao/learngit.git
    连接完成,将本地仓库的东西推送上去:
    git push -u origin master
    由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
    从现在开始,本地提交就可以使用命令
    git push origin master
    SSH警告
    当你第一次使用Git的clone或者push命令连接GitHub时,会得到一个警告:
    The authenticity of host 'github.com (xx.xx.xx.xx)' can't be established. RSA key fingerprint is xx.xx.xx.xx.xx. Are you sure you want to continue connecting (yes/no)?
    输入yes一直回车即可
     
    从远程仓库克隆仓库
    1、新建一个仓库
    2、克隆仓库
    使用命令:
    git clone git@github.com:michaelliao/gitskills.git
    克隆完成
     
     
    9、分支
    之前的master是整个项目的一个枝干,但是如果一个项目有多个人开发,我们开发了一半
    还没有开发完,如果提交上去,那就影响别人的开发,这时候我们就可以新建分支,在自己
    的分支上开发,每次也是提交到自己的分支上,等到完全开发完了再提交到主干上。
    1、创建分支
    git checkout -b lcw 创建分支 lcw
    git branch 查看当前分支
    git checkout 切换分支
     
    2、合并分支
    git merge lcw 命令用于合并指定分支到当前分支
    git branch -d lcw 删除分支
     
    10、解决冲突
    当不同分支对同一个文件进行了修改,提交的时候会有冲突,这时候需要手动解决冲突
    git status 查看状态
    git log --graph 命令可以看到分支合并图
     
    11、bug分支
    当我们正在lcw分支做工作,这时候需要改一个紧急bug,我们需要新建分支来修改bug,但是一旦切换我们现在的工作区就没有东西了,工作没有完成也无法提交,这时候我们可以使用:
    1、git stash
    将现有的工作区现场保存下来,再用
    git status查看分支是干净的
    2、然后切换到master分支,新建bug分支,修改提交删除bug分支
    完成bug修复再切到lcw分支
    git checkout lcw
    3、查看状态 git status
    工作区是干净的,那刚才我们工作现场呢?
    4、git stash list 命令看看
    我们现在恢复刚刚的工作区:
     
    1、使用git stash apply 但是恢复后stash内容不会删除,还需要git stash drop
    2、使用git stash pop,恢复的同时把stash内容也删了
    再用git stash list就没有保存的工作现场了
     
    12、多人协作(本地仓库 与 远程仓库的相关操作)
     参考:百度搜索廖雪峰GIT
  • 相关阅读:
    cf1100 F. Ivan and Burgers
    cf 1033 D. Divisors
    LeetCode 17. 电话号码的字母组合
    LeetCode 491. 递增的子序列
    LeetCode 459.重复的子字符串
    LeetCode 504. 七进制数
    LeetCode 3.无重复字符的最长子串
    LeetCode 16.06. 最小差
    LeetCode 77. 组合
    LeetCode 611. 有效三角形个数
  • 原文地址:https://www.cnblogs.com/dreamyu/p/7865216.html
Copyright © 2011-2022 走看看