结合上图片可以更深入理解git的本质
几个专用名词的译名如下。
Workspace | 工作区 |
---|---|
Index / Stage | 暂存区 |
Repository | 仓库区(或本地仓库) |
Remote | 远程仓库 |
文章目录
Git常用命令(可拷贝)
Git配置
在初始化新的git仓库或开始提交之前,应先配置git身份。
为了更改与提交关联的name,你可以使用git config命令:
git config --global user.name "Your Name"
同样,这也适用于更改与提交关联的电子邮件地址:
git config --global user.email "yourmail@example.com"
初始化项目
要初始化新的本地git项目,请打开git或bash终端,通过cd命令转到你想要存储项目的目录,然后运行:
git init
如果你已经在GitHub/Gitee中有一个现有项目,则可以使用git clone命令对其进行克隆:
git clone your_project_url
当前状态
为了检查本地git仓库的当前状态,你需要使用以下命令:
git status
这是最常用的命令之一,因为你需要经常检查本地代码仓库的状态,以便能知道更改、暂存或删除了哪些文件。
删除文件
为了从git项目中删除文件,可以使用以下命令:
git rm some_file.txt
放弃文件更改
万一你犯了一个错误,并且想要放弃对特定文件的更改,并将该文件的内容重置为最近一次提交时的内容,则需要使用以下命令:
git checkout -- file_name
这是一个非常方便的命令,可以快速将文件恢复为初始内容。
提交到本地
一旦你完成更改并使用git add命令添加到暂存区,你还需要提交更改。
为此,你必须使用git commit命令:
git commit
这将打开一个文本编辑器,你可以在此文本编辑器中输入提交说明。
并且,你可以使用-m标志直接在命令中指定提交说明:
git commit -m "Nice commit message here"
列出分支
为了列出所有可用的本地分支,只需运行以下命令:
git branch -a
你将获得本地和远程分支的列表,其输出如下所示:
bugfix/nginx-www-server-name
develop* main
remotes/origin/HEAD -> origin/master
remotes/origin/bugfix/nginx-www-server-name
remotes/origin/develop
remotes/origin/main
remotes关键字表示这些分支是远程分支。
从远程获取更新并将当前分支与上游(upstream)合并
如果你和团队中的其他开发人员一起工作于同一项目,则经常需要获取这些同事所做的更改,以便于本地存储到你的PC上。
为此,你需要做的就是使用git pull命令:
git pull origin branch_name
请注意,这也会把新更改合并到你签入到的当前分支中。
创建一个新分支
要创建一个新分支,你需要做的就是使用git branch命令:
git branch branch_name
如果不用上面的方法,我更喜欢使用以下命令,因为这会创建一个新分支,并将你切换到新创建的分支:
git checkout -b branch_name
如果branch_name已经存在,你将收到一条警告,表明该分支名称已存在,并且你将不会被签出到此分支。
将本地更新推送到远程
最后,一旦完成所有更改,就可以使用git add命令将文件添加到暂存区(staged),然后使用git commit命令提交更改,并且你必须将这些更改推送到远程git仓库。
为此,只需使用git push命令:
git push origin branch_name
删除分支
git branch -d branch_name
切换到新分支
git checkout branch_name
生成SSH秘钥
在任意位置打开git bash ,输入下面指令,一直enter就可以得到ssh秘钥,在生成位置将id_rsa.pub发送给管理员即可实现无需验证加密传输。
ssh-keygen -t rsa -C "xxxxx@xxxxx.com"
如上所述,如果此分支不存在,添加-b标志将创建分支。
如何将add的文件从缓存区删除
git删除已经add的文件的两种方法:
用版本库内容清空暂存区,
git reset HEAD (谨慎使用)
只把特定文件从暂存区删除
git rm --cached 文件路径 (建议使用)
markdown 文件换行方法
1.在行尾加两个空格
2.每行之间间隔一行空行
git恢复被修改且没有暂存(add)的文件
恢复到最后一次提交的改动:
1.特定文件:
git checkout -- + 需要恢复的文件名
2.恢复所有文件
git checkout .