Git 基础

初始配置

配置用户名密码,告诉Git你是谁

git config --global user.name "xxx"
git config --global user.email "xxx@gmail.com"

创建代码库

git init

文件管理

把文件放入暂存区:git add <name>

把文件从暂存区移除:git rm --cached -r <file>

删除文件:git rm <name>

移动/改名:git mv <file> <newfile>

版本管理

提交:git commit -m "注释"

撤销工作区的修改,恢复成暂存区的内容:git checkout -- <file>

放弃暂存区的内容:git reset HEAD <file>

git log可以看到由近到远的提交历史,可看3次

如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline参数

git reflog查看命令历史

版本回退:
HEAD表示当前版本,HEAD^表示上一版本,HEAD^^表示前两个版本,HEAD~100表示前100个版本…

git reset --hard HEAD^

也可以直接用commit id回退,commit id可以只写前几位

git reset --hard 3628164

分支

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

创建并切换分支:git checkout -b <name>

合并某分支到当前分支:git merge <name>

删除分支:git branch -d <name>

标签

查看所有标签:git tag

新标签:git tag <name> [commit_id]

name是要打的标签的名字,默认打在最新的commit上,也可以指定commit_id打标签

还可以打带说明的标签,-a指定标签,-m指定说明:

git tag -a "v1.0" -m "1.0 released" [commit_id]

远程仓库

查看远程仓库:git remote

查看仓库地址:git remote -v

添加远程仓库:git remote add <别名> <地址>

删除远程仓库:git remote remove <name>

提交代码到Github

http提交

没有配置远程仓库别名

git push https://xxx master

配置了远程仓库别名

git push origin master

ssh提交

配置ssh协议的远程仓库

git remote add origin git@xxx.xxx:xxx/xxx.git

生成ssh公钥

ssh-keygen -t rsa -C "email@xxx.com"

配置公钥到远程服务器

生成的公钥文件在用户文件夹下.ssh文件夹中

打开id_rsa.pub,复制其中的内容配置到远程服务器(Github)

之后再push本地仓库到远程就不用密码了

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

推荐阅读更多精彩内容

  • Git 基础 基本原理 客户端并不是只提取最新版本的文件快照,而是把代码仓库完整的镜像下来。这样一来,任何一处协同...
    __silhouette阅读 15,958评论 5 147
  • Git 命令行学习笔记 Git 基础 基本原理 客户端并不是只提取最新版本的文件快照,而是把代码仓库完整的镜像下来...
    sunnyghx阅读 3,963评论 0 11
  • 简介 Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 Git 与常用的版本控制工具 ...
    闽越布衣阅读 2,776评论 0 18
  • 刚开始自己其实是不想写博客或者是写文章的,上一次这么静下来写东西,嗯...,应该高考了。 前几天喜马拉雅上...
    小pb阅读 207评论 1 1
  • 在这几个月里面吗?老师带领着我们,每天朗读李白的诗歌。已经有几时首了。这些事有长有短,但都表达着,李白的心情。毛老...
    V8SUPERCHARGER阅读 651评论 0 1