Git整理

2018-09-09  本文已影响0人  echo_ni

Git是分布式版本控制系统,即管理中心可分布,版本库不局限于一台中央服务器,每个参与者电脑都是完整的版本库

设置版本库
Windows系统为了避免遇到莫名其妙的问题,目录名(包括父目录)需不包含中文

git init

没有看到.git目录,那是因为这个目录默认是隐藏的,用ls -ah命令就可以看见

Git账户:
Git安装完成后,设置账户

git config --global user.name "Your name"
git config --global user.email "email@example.com"

--global参数表示该机器上所有仓库的操作都经由这个账户
对某个仓库指定账户

git config user.name "github Name"
git config user.email "[github@xx.com](mailto:gitlab@xx.com)"
git config --list

git config --list查看当前配置, 在当前项目下面查看的配置是全局配置+当前项目的配置, 使用的时候会优先使用当前项目的配置
生成ssh key:

ssh-keygen -t rsa -C 'mail@gmail.com'

生成key值时,输入文件名,可生成多个key值,链接多个账户

工作区和版本库

image

本地资源管理器相当于工作区,.git文件夹即版本库,当中又区分暂存区和分支线
add每次只能操作一个文件,commit一次可提交多个文件

git diff:未add前,查看文件的修改项
git add:将文件添加到暂存区中
git commit -m "xxxx":提交暂存区中的文件到仓库,-m为提交注释
git status:查看仓库当前状态
git push:将本地项目提交到远程仓库GitHub。

查看提交记录

git log:查看提交记录
git log --pretty=oneline:逐行显示提交记录

撤销工作区修改

git checkout -- file.xx:file指文件名

版本更替

git reset --hard HEAD^:回退至上一个版本,^代表一个版本
git reset --hard commit_id:版本穿梭,ID不必写全,可匹配就行,5位...
git reset HEAD file.xx:撤销暂存区修改

删除文件

rm filename:删除文件&&删除不可commit提交--- git commit -am "XXX"
git rm filename:删除文件,对象只能是文件&&删除操作可commit提交
git rm -r/rf filename:-r 删除指定目录下所有文件和子目录;-f 强制删除文件或目录

查看提交日志

git log
git log --pretty=online
git diff HEAD -- filename.xx:查看对应文件工作区和版本库中最新版本区别(只能查看文件)

远程仓库

git remote add origin git@github.com:michaelliao/learngit.git:将本地仓库和远程关联
git clone xxx:拉取远程仓库至本地
git push origin master:推送修改至远程

添加验证私钥

ssh -v [git@github.com](mailto:git@github.com)
eval $(ssh-agent): 提示 "Could not open a connection to your authentication agent."
ssh-add ~/.ssh/<private_key_file>:添加私钥
上一篇 下一篇

猜你喜欢

热点阅读