下载安装好git,打开Git Bash Here,进行初始化三步。
初始化git
git config —global user.name ‘Kael’
git config —global user.email ‘pankai486@qq.com’
git初次使用配置个人用户名以及邮箱,如果以前已经配置,通过git config user.name或git config user.email查看。
ssh-keygen -t rsa -C “pankai486@qq.com”
生成SSH公钥(基于个人邮箱),如果以前已经生成,也可以跳过这步。
cat ~/.ssh/id_rsa.pub
获取生成的SSH公钥,如果报错,则使用上一步的命令重新生成公钥,复制公钥到阿里云,要从ssh-rsa开头开始复制起。
初始化项目
git clone 远程仓库地址
克隆远程仓库到本地,只需要再npm install下载依赖
git init
初始化一个本地仓库,可以看到项目文件夹下生成的.git隐藏文件夹。这个文件夹会记录以后每次的更改和提交。
git remote add origin 远程仓库地址
使用SSH链接新增远程仓库origin。
git remote set-url origin git@code.aliyun.com:koclaadmin/erp_app.git
如果链接写错了,修改链接。
配置git
git config —list
查看git的所有配置项
git config -e 或 git config -e —global
编辑配置文件,不加global表示只针对当前仓库配置,加了global表示针对系统上的所有仓库配置
git config —global user.name “用户名” 和 git config —global user.email “邮箱”
设置提交代码时的用户信息,如果去掉—global参数表示该配置只针对当前仓库
拉取/推送分支
git push origin 分支名
推送到指定分支,git push 默认推送分支。
git pull origin 分支名
拉取远程仓库对应分支,要是出现Are you sure you want to continue connecting (yes/no)?,则输入yes,然后按回车。git pull 拉取远程仓库默认分支
保存操作
git add . 或 git add
跟踪所有文件或者部分文件,. 点符号一般表示所有文件。
将跟踪的文件提交到暂存区。
git commit -m ‘提交信息’
将暂存区的文件提交到本地仓库,提交内容时需要添加提交的理由。
如果没有输入-m,直接使用git commit,那么要通过按i键输入提交信息,输入完后按Esc键退出输入状态,按w键保存命令,按q键退出窗口回到命令界面。
git status
查看工作区状态
git diff
比较暂存区和工作区的文件差异
git reset 分支
执行该命令,暂存区的目录树会被master分支的目录树覆盖重写,但是工作区不受影响。
git rm —cached
当执行该命令,会直接从暂存区删除文件,工作区不做出改变
git mv
移动或重命名工作区文件
git branch (branchname)
创建新分支
git checkout 分支名
切换指定分支。
git checkout . 或者 git checkout —
执行该命令,会用暂存区文件替换工作区文件,这个操作非常危险,因为这样会们会丢失工作区中未提交到暂存区中的更改
git checkout 分支 . 或 git checkout 分支
执行该命令时,会用我们使用的分支中的全部或者部分文件替换暂存区以及工作区的文件,这个命令也相当危险,因为不但会清除工作区中未提交的改动,也会清除暂存区未提交的改动。
git checkout -b 分支名
创建分支并切换到那个分支
git merge (branchname)
将对应分支合并到当前分支
git版本操作
git log
命令查看每一次提交的记录。可以在后面加 —pretty=oneline 参数,可以产生缩略的版本迭代信息
git log —oneline
加—oneline选项来查看历史记录的简洁版本
git log —graph
拓扑图选项,查看历史中什么时候出现了分支、合并
git log —reverse —oneline
—reverse参数可以逆向显示所有日志
git log —author=用户名
如果我们只想查看指定的用户的提交日志
git blame
以列表形式查看指定文件的历史修改记录
分支管理
git reset —hard commit_id
退到/进到某个版本 指定commit_id的随机的哈希值。
git push origin head —force
强推到远程,恢复的文件强行添加到远程仓库。
注意:在分支中的操作,在切换别的直线前要保存add和commit之后在切换
查看分支:git branch
创建分支:git branch name
切换分支:git checkout name
创建+切换分支:git checkout –b name
合并某分支到当前分支:git merge name
删除分支:git branch –d name
如果远程仓库不为空,可以如下操作:https://blog.csdn.net/qq_41146808/article/details/124802565
如果远程源设置错了
https://www.csdn.net/tags/OtTaIgwsNzk3My1ibG9n.html
git cherry-pick
upstream
git revert 具体commit
git stash -m 将代码临时贮藏,等别的工作完成后再恢复代码继续工作