Git学习笔记

本地
git init 初始化,命令会在你项目的根目录下创建一个新的 .git 目录,其中包含了你项目必需的 ... 比如,指定某个Git 仓库为中央仓库

git status 查看状态

git add a.file 添加文件,此时文件添加到提交缓存中,可以使用git rm —cached 移除这个缓存

git commit main.c -m 'first commit’ 提交到服务器,-m表示log

注意:如果没有在commit后没加上-m说明修改了什么,会自动进入vim界面要求输入修改信息按键上的i代表开始输入内容,输入完毕之后,esc :q退出

git中的add 和 svn的不太一样,svn只需要一次但是 git每次新建或者修改都需要add
git commit -m “*****”
总结:未添加之前的颜色: 红色,代码在“工作区”
添加到暂存区之后的颜色: 绿色,代码在“暂存区”

git log 所有log信息
git reflog main.c 查看所有修改信息(所有版本)

git branch 查看分支信息

git branch a 新建一个a分支

git chockout 回退到上一次提交的版本[未提交时]
git reset --herd HEAD 强制恢复上一个已提交版本
git checkout a 切换到a分支

git checkout -b a 新建一个a分支 并切换到a分支

git merge a 切换到master 然后执行改行代码 合并a分支

git branch -d a 删除d分支
git branch -D a 强制删除a分支

git tag v1.0 在当前代码状态下新建一个v1.0的标签。
git tag 查看所有标签
git checkout v1.0 切换到v1.0的代码


远程
SSH
验证电脑连接到github :
ssh -T git@github.com

git pull origin master 把最新代码更新到本地
git push origin master 把本地代码推送到远程master分支


提交代码:
1.clone到本地,然后直接commit,再执行 git push origin master
2.本地已有项目test2,在github上建一个test的项目,再把本地的test2的所有代码commit记录提交到githu的test项目:
0.1 在GitHub建一个test项目。
0.2 本地test2 和GitHub的test关联:先切换test2目录
git remote add origin git@github.com:illaclv/test.git【orgin 是远程仓库名, 后面为地址】查看所有远程仓库命令:git remote -v
0.3 提交代码
git push origin master

——其他
1.用户名和邮箱:
git config --global user.name ‘'
git config --global user.email ‘’
2.别名
git config --global alias.co checkout
git config --global alias.psm ‘push origin master’
查看日记
git log --graph --pretty=format:’%Cred%h%Creset -%C(yellow)%d%Creset%s%Cgreen(%cr)%C(blod blue)<%an>%Creset’--abbrev-commit --data=relative

其他配置
git config --global color.ui true【开启git着色】

diff
git diff <id2><id2>比较两次提交之间的差异
git diff <branch1>..<branch2>比较两分支之间的差异
git diff --staged比较暂存区和版本库的差异

checkout
1.切换分支:git checkout develop [切换到develop分支]
2.切换tag : git checkout v1.0
git checkout aaaaaaaa[版本号]
3.还原文件(只能还原还未添加到暂存区的文件) git checkout a.md

stash
封存还未commit的代码
git stash
git stash list 【暂存区多一条记录】
现在切换其他分支。等完成其他的工作,再切换回来,恢复之前的代码:
git stash apply
git stash drop [删除暂存区的记录]
git stash pop == apply + drop
git stash clear 清除暂存区所有的记录

merge &rebase
git checkout master->切换到主分支
git merge a->合并a分支
或者 git rebase a ->合并a分支

分支相关
远程推送分支
git push origin a
git push origin a :b 【在远程的服务器取名为b】
本地分支列表 git branch
远程分支列表 git branch -r
删除远程分支 git push origin :a
下载远程分支到本地:git checkout a origin/develop
下载远程分支到本地并切换到该分支:git checkout -b a origin/develop

Paste_Image.png

一些问题:
fatal: remote origin already exists.
1、先删除远程 Git 仓库
git remote rm origin
2.重新添加远程库
git remote add origin git@github.com:illaclv/test.git

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Git教程 一、Git简介 1.1. Git的诞生1.2.集中式的vs分布式 二、安装Git 三、创建版本库 四、...
    曹渊说创业阅读 4,498评论 0 2
  • git学习笔记 声明 本文是本人学习Git过程中所做的笔记,以便日后查阅,文中多有错漏之处,不建议用作学习材料,文...
    sayonara_yoyo阅读 3,964评论 0 1
  • ◆◆◆特别声明◆◆◆ 本篇文章系本人学习《廖雪峰Git教程》笔记,主要用作自己复习使用。首先向廖雪峰老师表示感谢,...
    CalvinNing阅读 3,669评论 0 1
  • 本文来自罗辑思维60秒语音,由等风来(微信460579084)编辑整理,略有删改。 前不久,我看到一个视频,有一个...
    杨心武阅读 3,587评论 2 1
  • 前几天听院长讲毕设的时候,偶然间想到,来学校之前自己也是想要学好专业的,却不知什么时候起变得整日闲散,碌碌无为,但...
    Holmoz阅读 1,579评论 0 0