感触life

git基础版命令笔记

Windows下载后,默认安装

$ git config --global user.name "ganchu"//安装完毕给自己起个名字
$ git config --global user.email "100@qq.com"//给自己起个邮箱
$ mkdir learngit //创建一个learngit 文件夹
$ cd learngit    //进入文件夹
$ pwd            //查看文件夹所在路径/c/Users/Administrator/learngit
$ git init //把当前目录变成Git可以管理的仓库

在本地learnhit文件夹下,创建一个a.txt, 重点从这里开始

$ git add a.txt //把本地文件添加到仓库(可以理解为缓存区,待处理,可执行多个文件)
$ git commit -m "把本地a.txt提交到版本库" //双引号里面写说明,如果add了多个,则全部一起提交的
$ git status //仓库当前的状态,先看次,再试试修改本地a.txt再看次?
$ git diff a.txt //查看修改内容

工作区(本地电脑),暂存区(仓库/缓存区),版本库(存着每次提交的文件)add一个a.txt文件后,文件放到暂存区,当修改本地a.txt后,commit到版本库,文件是commit暂存区的,而不是最新修改本地的

版本回退,用1,3命令即可

$ git log //详细版历史记录
$ git log --pretty=oneline //简洁版历史记录
$ git reset --hard 44724792ad //后面数字换成历史记录的id,写前几位也可以
$ git reflog //boss级命令,防恢复后再要再恢复的后悔药
$ cat a.txt //看恢复后文件内容

撤销修改或者撤销暂存区的文件,HEAD代表是最新的版本

$ git checkout -- a.txt //当你在本地乱改了,命令能恢复文件上次的状态
$ git reset HEAD a.txt //还还加到了暂存区,先执行这个,再执行上面的

git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。

删除本地文件跟版本库文件,先提交一个t.txt到版本库,参考a.txt创建

$ rm t.txt  //删除本地的!!删除错了?可以用$ git checkout -- a.txt还原
$ git status //看看提示什么?命令会立刻告诉你哪些文件被删除了
$ git rm t.txt //删除版本库的
$ git commit -m "remove t.txt" //确认删除,写上注释

上面是git的基础命令,下面关于远程仓库,主要国内码云,国外github

$ ssh-keygen -t rsa -C "youremail@qq.com" //创建sshkey,一路回车不用密码

    1. 在用户主目录(Windows在C/用户/Administrator)里找到.ssh目录,里面有id_rsaid_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
    2.登录 GitHub ,点右上角头像—setting–SSH and GPG keys—New SSH key,title随便填, Key文本框里粘贴id_rsa.pub文件的内容
   3.点击右上角+ ,然后Create a new repository, 在Repository name填入learngit,其他保持默认设置,点击“Create repository”按钮,就成功地创建了一个新的Git仓库:GitHub告诉我们,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库,可以复制那里命令过来创建连接

$ git remote add origin https://github.com/ganchu/learngit.git
$ git push -u origin master //本地库的所有内容推送到远程库上,第一次才要加-u,应该会弹出窗口让你登录,你输入github账号密码就好
$ git push origin master //以后把版本库内容推远程库,只需要这样
$ git clone https://github.com/ganchu/learngit.git //远程克隆项目,可以在github项目地址后面加.git即可把项目拉取到本地

以上内容为git基础版,适合为个人开发,接下来是分支,多人协同高级版

码字很辛苦,转载请注明来自感触life-博客《git基础版命令笔记》

评论