typora-copy-images-to |
---|
img |
[TOC]
- git config --global user.name "username" 设置账户名和邮箱
git config --global user.email "email"
-
在本地使用git init初始化当前目录为一个仓库
-
git add [文件名或目录] 跟踪文件或目录
git rm [file] 取消文件的跟踪
只对某种类型的文件进行跟踪,如md文档 git add *.md
-
git commit 提交暂存文件到本地仓库
更快捷的命令 git commit -am '提交信息'
-
git status 查看当前文件提交状态
-
远程仓库
连接本地仓库到远程仓库
git remote add origin https:/a;sldkgjlkjglkwejglkwe/xxx.git
查看远程仓库
git remote -v
修改连接的远程仓库地址
git remote set-url origin https:/a;sldkgjlkjglkwejglkwe/xxx.git
-
推送分支到远程仓库
-
拉取冲突 解决提交时文件不同步的问题
保存所有未提交的修改
git stash git stash save "描述信息" 提交时可以添加描述信息
查看和应用暂存
git stash list git stash pop 会直接将最新的stash应用到工作目录中 git stash drop 0 清楚最新的一个stash
git pull -–rebase origin master
操作,意为先取消commit记录,并且把它们临时保存为补丁(patch)(这些补丁在”.git/rebase”目录中),之后同步远程库到本地,最后合并补丁到本地库之中 -
提交到远程仓库
git push origin master 使用下面命令之后,每次提交代码时使用git push即可 git push -u origin master
-
显示提交历史
git log git log --oneline 以一行简化的信息显示提交日志 git log --all --graph 以图形化式显示各分支及merge历史 查看最近3条更新日志,并且简单显示出所涉及的文件 git log -3 --stat 查看某一次提交的内容,执行下面命令(可以不加--stat) git show {commit_id} --stat
-
git diff 显示并编辑冲突的内容。 手动编辑冲突的文件,解决冲突。
在文件中,Git会用<<<<<<<、=======和>>>>>>>标记出冲突的部分。需要仔细检查这些标记之间的内容,并根据需要进行修改
查看该次提交与上次提交对所有文件所做的修改
git diff [commit_id]^
如下方式可以查看指定文件的修改
git diff commit_id -- <file_path>
查看最新提交相对于上一次提交所做的修改,可选加文件名称
git diff head^ head [file_path]
git brance feature 创建名为feature的分支
git branch --list 查看分支
git checkout feature1 切换到feature1分支上
git checkout <commit-hash> 切换到历史提交版本
git switch - 恢复到当前版本
在切换到master分支之后使用 git merge feature2 将master2分支合并到主分支上。如果有冲突conflict 则使用vi编辑该文件修改文件为想要的那个改动再出来提交即可。
git reset HEAD~ --soft 撤销最后一次commit(而之前使用git add设置的文件暂存状态仍然存在)
git reset HEAD~ 撤销commit以及暂存状态,但是修改过的内容还在
git reset HEAD~ --hard 不光把暂存取消了,也把之前修改过的内容也撤销了 慎用
git restore file.txt 撤销对文件的修改
git reset filename 取消某个文件的暂存状态,并保留对文件的修改
git restore filename 撤销对文件的修改,但如果该文件的修改已经在暂存区中则该命令没有任何作用
[Ubuntu中如何为 GitHub 设置基于 SSH 密钥的身份验证 - 知乎 (zhihu.com)](https://zhuanlan.zhihu.com/p/377361811#:~:text=进入本地库目录并执行下一个命令以允许通过 SSH 工作: git remote set-url origin,git%40github.com%3Ausername%2Frepository-name.git 2. 直接通过 SSH 方式克隆库: git clone git%40github.com%3Ausername%2Frepository-name.git)
ssh-keygen -t rsa -b 4096 生成一个新密钥对(一路回车即可)
cat ~/.ssh/id_rsa.pub 获取公钥文件内容
在github个人设置里面找到,点击后找到new ssh key
添加新身份并把获取的公钥文件内容复制进去即可
windows下使用同样指令,可以在用户目录下的隐藏文件中找到公钥文件id_rsa.pub
1.在一个目录下执行git clone 命令,就可以把整个仓库拉取下来,这时候克隆下来的仓库会自动添加一个origin远程仓库指向github上的仓库。如果新建一个仓库,然后再链接远程仓库,也是一样的道理