2023年11月29日发(作者:)

Git常⽤命令⼤全

Git常⽤命令

请确保已经安装⾥git客户端

⼀般配置

git --version //查看git的版本信息

git config --global //获取当前登录的⽤户

git config --global //获取当前登录⽤户的邮箱

登录git

/* 如果刚没有获取到⽤户配置,则只能拉取代码,不能修改 要是使⽤git,你要告诉git是谁在使⽤*/

git config --global 'userName' //设置git账户,userName为你的git账号,

git config --global 'email'

创建⼀个⽂件夹

mkdir nodejs //创建⽂件夹nodejs

cd nodejs //切换到nodejs⽬录下

初始化git仓库

git init //nodejs⽂件夹下初始化⼀个仓库,此时⽂件⾥会到⼀个.git的隐藏⽂件夹

创建忽略⽂件

touch .gitignore //不需要服务器端提交的内容可以写到忽略⽂件⾥

/*

.git

.idea

*/

查看⽬录

ls -al

创建⽂件并写⼊内容

如果⽂件不存在则会创建⽂件

echo "hello git"

> //'hello git' 写⼊到

单个>箭头表⽰写⼊, >>表⽰追加

查看⽂件内容

cat

增加到暂存区中

git add

git add -A //全部添加到缓存区

增加到版本库中

git commit -m '备注信息'

查看版本

git log --oneline

⽐较差异

⽐较的是暂存区和⼯作区的差异

git diff

⽐较的是暂存区和历史区的差异

git diff --cached

⽐较的是历史区和⼯作区的差异(修改)

git diff master

撤回内容

删除暂存区

保证当前⼯作区中没有

git rm --cached

使⽤--cached 表⽰只删除缓存区中的内容

回滚版本

回滚最近的⼀个版本 git log

git reset --hard HEAD/commit_id

回滚到未来

git reflog

分⽀管理

创建分⽀

git branch dev

在分⽀开发的过程中遇到其他问题需要切换其他分⽀

保留写好的内容在切换到主⼲

保留内容

git stash

在次切换分之后需要应⽤⼀下保留的内容

git stash apply

丢掉保存的内容

git stash drop

使⽤并丢掉

git stash pop

最佳分⽀

-有的时候开发需要合并指定的内容,⽽不是合并所有的提交,所以我们需要挑选最好的,⾃⼰⽣产版本

合并分⽀把树杈掰到主⼲上

git rebase

安装及配置:

Ubuntu下安装:sudo apt-get install git

配置⽤户名:git config --global "你的名字"

配置e-mail:git config --global "你的邮箱@"

与添加有关的:

将当前⽬录变为仓库:git init

将⽂件添加到暂存区:git add ⽂件名 [可选:另⼀个⽂件名]

将暂存区提交到仓库:git commit –m "描述"

与查询有关的:

查询仓库状态:git status

⽐较⽂件差异(请在git add之前使⽤):git diff ⽂件名

查看仓库历史记录(详细):git log

查看仓库历史记录(单⾏):git log --pretty=onlinegit log --online

查看所有版本的commit ID:git reflog

与撤销有关的:

撤销⼯作区的修改:git checkout -- ⽂件名

撤销暂存区的修改:git reset HEAD ⽂件名

回退到历史版本:git reset --hard 该版本ID

回退到上个版本:git reset --hard HEAD^

上上版本是HEAD^^,也可⽤HEAD~2表⽰,以此类推

与标签有关的:

为当前版本打标签:git tag 标签名

为历史版本打标签:git tag 标签名 该版本ID

指定标签说明:git tag –a 标签名 –m "标签说明" [可选:版本ID]

查看所有标签:git tag

查看某⼀标签:git show 标签名

删除某⼀标签:git tag –d 标签名

GitHub有关的:

先有本地库,后有远程库,将本地库push到远程库

关联本地仓库和GitHub库:git remote add origin ⽹站上的仓库地址

第⼀次将本地仓库推送到GitHub上:git push –u origin master

先有远程库,后有本地库,从远程库clone到本地库

从远程库克隆到本地:git clone ⽹站上的仓库地址

SSH Key

⽣成SSH Key:ssh-keygen –t rsa –C "你的邮箱@"

⽣成Key时弹出选项,回车选择默认即可。

Key保存位置:/root/.ssh

登陆GitHub,创建new SSH key,其内容为/root/.ssh/id_中⽂本

已经有了本地库和远程库,⼆者实现同步

本地库的改动提交到远程库:git push origin master

更新本地库⾄远程库的最新改动:git pull

Git常⽤命令

请确保已经安装⾥git客户端

⼀般配置

git --version //查看git的版本信息

git config --global //获取当前登录的⽤户

git config --global //获取当前登录⽤户的邮箱

登录git

/* 如果刚没有获取到⽤户配置,则只能拉取代码,不能修改 要是使⽤git,你要告诉git是谁在使⽤*/

git config --global 'userName' //设置git账户,userName为你的git账号,

git config --global 'email'

创建⼀个⽂件夹

mkdir nodejs //创建⽂件夹nodejs

cd nodejs //切换到nodejs⽬录下

初始化git仓库

git init //nodejs⽂件夹下初始化⼀个仓库,此时⽂件⾥会到⼀个.git的隐藏⽂件夹

创建忽略⽂件

touch .gitignore //不需要服务器端提交的内容可以写到忽略⽂件⾥

/*

.git

.idea

*/

查看⽬录

ls -al

创建⽂件并写⼊内容

如果⽂件不存在则会创建⽂件

echo "hello git"

> //'hello git' 写⼊到

单个>箭头表⽰写⼊, >>表⽰追加

查看⽂件内容

cat

增加到暂存区中

git add

git add -A //全部添加到缓存区

增加到版本库中

git commit -m '备注信息'

查看版本

git log --oneline

⽐较差异

⽐较的是暂存区和⼯作区的差异

git diff

⽐较的是暂存区和历史区的差异

git diff --cached

⽐较的是历史区和⼯作区的差异(修改)

git diff master

撤回内容

git rm --cached

使⽤--cached 表⽰只删除缓存区中的内容

回滚版本

回滚最近的⼀个版本 git log

git reset --hard HEAD/commit_id

回滚到未来

git reflog

分⽀管理

创建分⽀

git branch dev

切换分⽀

git checkout dev

创建分⽀并切换分⽀

git stash

在次切换分之后需要应⽤⼀下保留的内容

git stash apply

丢掉保存的内容

git stash drop

使⽤并丢掉

git stash pop

最佳分⽀

-有的时候开发需要合并指定的内容,⽽不是合并所有的提交,所以我们需要挑选最好的,⾃⼰⽣产版本

合并分⽀把树杈掰到主⼲上

git rebase