git commit
命令会将代码提交到本地仓库git add
命令会将代码提交到暂存区// 用户名
git config --global user.name
// 邮箱
git config --global user.email
// 1、生成ssh公钥
ssh-keygen -t rsa
// 2、复制到粘贴板
cat ~/.ssh/id_rsa.pub | clip # Windows
cat ~/.ssh/id_rsa.pub | pbcopy # MacOS
// 3、在github/gitee/公司私有代码库中添加配置并将复制的ssh公钥粘贴进去
在项目根目录使用git init
进行初始化
git clone
git pull
,等同于 git fetch
+ git merge
git pull
和git fetch
的效果都是本地代码同步远端更改,区别是:
git pull
拉取远端最新代码后会自动将新代码合入到本地仓库git fetch
拉取远端最新代码后不会自动合入,要合入需要手动使用 git merge
git add [file1] [file2]
:提交单个或多个文件变更
git add .
:提交所有文件
git add -u
:只提交变更文件,不提交新增文件
git commit -m "msg"
git status
git push origin
git remote -v
git add remote origin <代码库>
// 1、查看当前代码库的所有分支,包括本地和远端
git branch -a
// 2、本地有分支直接切换过去
git checkout
// 3、本地没有分支创建并切换过去
git checkout -b
// 1、多条变更,直接merge目标分支
git merge
// 2、单条变更
// 先切换到目标分支,查看提交记录
git checkout
git log // 查看提交历史
// 3、找到对应commitID复制,切换到要提交到的分支
git cherry-pick
git reset
多人协作中最重要的是解决冲突,主要是2个命令
git reset --hard
和git reset --soft
git reset [--mixed]
:默认,用于重置暂存区的文件与上一次的提交(commit)保持一致,工作区文件内容保持不变。git reset --hard
:撤销工作区中所有未提交的修改内容,将暂存区与工作区都回到上一次版本,并删除之前的所有信息提交git reset --soft
:回退到某个版本
git reset [--hard|--soft]
的参数: