git基础命令

初始化仓库

初始化一个本地仓库

# 一般不使用,直接克隆服务器的仓库到本地
mkdir pyprc
cd pyprc
# init后,会在该文件夹下生成一个.git隐藏目录,里面是配置及跟踪信息
git init 

克隆仓库

git clone https://github.com/xxx/xxx.git

git基本配置

配置文件位置:

# 默认不存在,需要的话自己创建
~/.gitconfig

显示当前配置

git config --list

创建用户名和邮箱信息

git config [--global] user.name "xxxx"
git config [--global] user.enamil  "xx@xx.xx"

默认不配置的话,会使用全局配置里面的用户名和邮箱 全局git配置文件路径:~/.gitconfig

默认不要加 --global

暂存区与仓库

基础命令

将文件添加到暂存区(建立跟踪)

git add [file1] [file2] # 添加单个文件  
git add . # 将所有新建或者更新的文件建立跟踪

将暂存区内容删除

git rm [file1] [file2]
git rm --cached fileName  # 删除暂存区的某个文件,工作区的该文件是修改后的样子
git rm -f file_name # 这样不仅会删除暂存区的文件,还会删除工作区文件(慎重操作)

git rm -f 删除后的恢复

# 注:此方法适用于未commit的情况
git reset
git checkout fileName

将文件改名并放到暂存区

git mv [file1] [file2]

版本回退

# 该回退是提交到本地仓库之后,发现版本有问题,需要回退到之前的版本的方法
git reflog 查看版本信息
git reset --hard [hash] # 回退到某个版本
xiaozhisummer

查看当前分支的历史版本

git log # 查看的比较详细
git reflog # 主要用这个,有版本信息及hash信息

查看变更信息

git status
git show <hash>

提交到仓库

git commit [-a] -m [message]

远程仓库操作

一般使用远程仓库,就是在自己电脑上生成公私密钥, 然后把公钥上传到git服务器上去建立连接

否则,就需要每次输入服务器的帐号密码才能push

与远程仓库建立联系

git remote add [origin] https://github.com/duzhaoqi/demo.git

查看与远程仓库的联系

git remote -v

将内容推送到master分支仓库

git push origin master(需要github的账号密码)

克隆仓库

git clone https://github.com/duzhaoqi/demo-get	

一个在线练习:https://try.github.io

解决需要重复输入帐号密码

验证成功后需要输入gitee的密码(这就是需要解决的问题)。

我们先输入正确的密码,

接下来可以临时缓存密码:

git config --global credential.helper cache

或者一直保存密码(我用的下边这个):

git config credential.helper store

之后再pull就没有管我要密码了

git配置

我们可以在仓库中创建一个隐藏文件(.gitignore),里面写我们忽略的文件名或一些文件可以在提交的时候,忽略写这些写进.gitignore 里面的文件,如:*.exe server.conf

git别名

我们可以通过命令添加命令别名

git config [--global] alias.st status

它保存的位置在家目录下的.gitconfig文件下。

常用的命令别名:

[alias]
    st = status
    his = log --pretty=format:'%h %ad | %s%d [%an]' --graph --date=short
    ci = commit
    ad = add .
    br = barnch

git管理空目录

git在push的时候,并不会上传空目录,但是很多时候需要我们去保留这个空目录

因此,我们可以在空目录中添加一个叫做.gitkeep的文件

比如我们的logs目录,里面是有日志文件的,但是我们在.gitignore中忽略了目录中的所有日志文件,导致该目录展现为空目录,但是我们需要在push的时候保留空目录, 因此,可以执行上述操作.

.gitignore文件 新增忽略文件并没有生效

新增的忽略文件没有生效,是因为git是有缓存的,而之前的文件在缓存中,并不会清除掉,还会继续提交,所以更新.gitignore文件,要清除缓存文件

git rm -r --cached .
git add .
git commit -m '更新缓存后的提交'
posted @ 2020-06-30 13:27  Linuxbugs  阅读(169)  评论(0编辑  收藏  举报