Git使用笔记


一、git安装

git下载地址: https://git-scm.com/

安装时基本保持默认就可以了。

部分安装说明:

(摘自:https://www.cnblogs.com/smuxiaolei/p/7484678.html):



二、配置github账号和使用:

配置全局的用户名和邮箱

运行git目录下的git-bash.exe

在命令行中分别输入如下命令:

#设置邮箱
git config --global user.email "xxx@gmail.com"
#设置用户名
git config --global user.name "xxx"
#查看Git所有配置
git config --list
#删除全局配置项
git config --global --unset user.name

注意:git config --global 参数,有了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱。

github上创建ssh key

在github上创建ssh key让在提交代码到远程厂库时不用每次都输入密码

在github上clone项目到本地时,有2种方式https 和 SSH,它们的区别是:前者可以随意克隆 github 上的项目,而不管是谁的;而后者则是你必须是你要克隆的项目的拥有者或管理员,且需要先添加 SSH key ,否则无法克隆。

生成 SSH Key

ssh-keygen -t rsa -C "你的邮箱地址"
#代码参数含义:
	-t 指定密钥类型,默认是 rsa ,可以省略,还可以指定为 dsa。
	-C 设置注释文字,比如邮箱。
	-f 指定密钥文件存储文件名。可以省略,使用默认值 id_rsa 和 id_rsa.pub。

接着又会提示你输入两次密码(该密码是你 push 文件的时候要输入的密码,而不是 github 管理者的密码),当然,你也可以不输入密码,直接按回车(推荐, 因为对于大多数人来说,你的项目的价值都…)。那么 push 的时候就不需要输入密码,直接提交到 github 上了。

检查是否成功生成 SSH key

$ cd ~/.ssh

这两个命令就是检查是否已经存在 id_rsa.pub 或 id_dsa.pub。

添加 SSH Key 到 github 上

登录你的 github 账号,从右上角的 Account Settings 进入,然后点击左边菜单栏的 SSH and GPG keys,点击 New SSH key 将 .ssh/id_rsa.pub 的内容拷贝到 key 对应的输入框。Title 可以自己命名,默认的会使用你的邮件名称。

测试 SSH key 是否配置成功

ssh -T git@github.com

会有警告,不用管,输入yes确认即可,打印如下提示即配置成功:

...You've successfully authenticated,...

Github SSH key 使用

  1. 为已经检出的 repos 指定 github 账号

修改 .git/config 并找到 [remote “origin”] ,修改 url 的值为

[remote "origin"]   
	url = git@.github.com:user_name/repos_name.git
  1. 使用账号 clone 已存在的 repos
git clone git@github.com:user_name/repos_name.git

github 上创建一个免费的域名

新建一个仓库,仓库名称必须是: 你的github账号用户名.github.io;如:你的用户名是test, 那么就应该为test.github.io,完成后稍等一会儿就可以使用 http://test.github.io访问了。

三、git常用的命令

  1. 初始化仓库。在当前目录下右键运行git-bash;输入如下命令将生产一个.git的隐藏目录。
git init
  1. 添加命令。将文件添加到暂存区里去
git add 文件名
# 如:git add README.md
  1. 提交文件的本地仓库
git commit -m '提交的注释说明,只能提交暂存区的文件'
git commit -am '提交的注释说明,忽略未被跟踪的文件,相当于git add和git commit -m'
  1. 获取文件是否存在未提交的。
git status
  1. 查看文件中修改情况。注意:git对于图片、视频这些文件无法知道修改了什么,只知道大小的改变。
git diff 文件名
# 如: git diff xxx.txt
  1. 显示提交日志。
#获取最近的提交记录
git log 
#简化日志显示
git log -pretty=oneline
  1. 版本回退
#强制回退到上一个版本
git reset  --hard HEAD^
#强制回退到上上一个版本
git reset  --hard HEAD^^
#指定某个文件或目录回退到某个版本
git checkout  ee25a1a3f9465 文件或目录
# 如:  git checkout  ee25a1a3f9465 demo/demo.java
	    git checkout  ee25a1a3f9465 test/demo
  1. 提交文件到远程仓库
git push

四、git常用教程

以下内容来自(推荐去看原文):

1. git基础

git提交代码

git会在本地保存一个版本,即代码提交都是先提交到本地中,然后再提交到远程仓库。

#git 代码提交流程
暂存区-->HEAD(本地仓库)-->origin(远程仓库)

对应的命令:

#提交到暂存区
git add 文件名
#提交到HEAD(本地仓库)
git commit -m "提交说明"
#提交到origin(远程仓库)
git push origin master

更新与合并

#更新你的本地仓库至最新改动
git pull

获取(fetch) 并 合并(merge)

标签

为软件发布创建标签是推荐的。这个概念早已存在,在 SVN 中也有。你可以执行如下命令创建一个叫做 1.0.0 的标签:

git tag 1.0.0 1b2e1d63ff

1b2e1d63ff 是你想要标记的提交 ID 的前 10 位字符(不一定10位,只要保持唯一即可);获取id

git log

日志

#获取日志
git log
#查看某个人的提交记录
git log --author=username
#一个压缩后的每一条提交记录只占一行的输出
git log --pretty=oneline
#通过 ASCII 艺术的树形结构来展示所有的分支, 每个分支都标示了他的名字和标签:
git log --graph --oneline --decorate --all
#看看哪些文件改变了
git log --name-status

替换本地改动

#替换掉本地改动;此命令会使用 HEAD 中的最新内容替换掉你的工作目录中的文件
git checkout -- <filename>

丢弃在本地的所有改动与提交,可以到服务器上获取最新的版本历史,并将你本地主分支指向它:

git fetch origin
git reset --hard origin/master

git之分支使用

分支是用来将特性开发绝缘开来的。在你创建仓库的时候,master 是“默认的”分支。在其他分支上进行开发,完成后再将它们合并到主分支上。

# checkout远程分支到本地
git checkout -b 本地分支名 origin/远程分支名
# 创建分支,并切换到分支
git checkout -b 分支名称
# 切换回主分支
git checkout master
# 分支删掉
git branch -d feature_x
# 除非你将分支推送到远端仓库,不然该分支就是 不为他人所见的
git push origin <branch>

特别提醒:扫码关注微信订阅号'起岸星辰',实时掌握IT业界技术资讯! 转载请保留原文中的链接!
  目录