
git的工作流程一般是这样的:
在工作目录中添加、修改文件;
将需要进行版本管理的文件放入暂存区域;git add .
将暂存区域的文件提交到git仓库。git commit
因此,git管理的文件有三种状态:已修改(modified),已暂存(staged),已提交(committed)
查看用户名
git config user.name
查看密码
git config user.password
查看邮箱
git config user.email
查看配置信息
git config --list
修改用户名
git config --global user.name "xxxx(新的用户名)"
修改密码
git config --global user.password "xxxx(新的密码)"
修改邮箱
git config --global user.email "xxxx@xxx.com(新的邮箱)"
移除用户名和邮箱
git config --global --replace-all user.name "xxxx(用户名)"
git config --global --replace-all uesr.email "xxxx@xxx.com(邮箱)"
以创建一个dev分支为例
切换到被copy的分支(master),并且从远端拉取最新版本
git checkout master
git pull
从当前分支拉copy开发分支
git checkout -b dev
把新建的分支push到远端
git push origin dev
关联
git branch --set-upstream-to=origin/dev dev
再次拉取验证
git pull
branch_name 就是分支的名称
git clone -b [branch_name] XXX
先将本地代码放在暂存区:
git stash
将远程GitLab上代码拉取下来:
git pull
将1中暂存区的代码放回本地:
git stash pop
接下来继续我们平时的正常上传代码的操作即可
// 1.提交tracked的修改
git commit -m '操作内容'
git push
// 2.提交untracked的修改
git add . 或者 git add -A
git commit -m '操作内容'
git push
解决Git报错:error: You have not concluded your merge (MERGE_HEAD exists).
保留本地更改,中止合并
git merge --abort
重新合并
git reset --merge
重新拉取
git pull
首先切换到分支;
git checkout feature
使用git pull 把分支代码pull下来;
git pull
切换到主分支;
git checkout master
把分支的代码merge到主分支;
git merge feature
git push推上去OK完成,现在自己分支的代码就合并到主分支上了
git push
origin/remote_branch 是你本地分支对应的远程分支
your_branch 是你当前的本地分支
git branch --set-upstream-to=origin/[remote_branch] [your_branch]
修改最近一次的commit信息
git commit --amend
修改本地分支名称
git branch -m [oldBranchName] [newBranchName]
将本地分支的远程分支删除
git push --delete origin [oldBranchName]
将改名后的本地分支推送到远程,并将本地分支与之关联
git push --set-upstream origin [newBranchName]
查看所有本地分支
git branch
-d是一个标志,是命令的一个选项,它是–delete。 顾名思义,它表示您要删除某些内容。
local_branch_name 是要删除的分支的名称。
git branch -d [local_branch_name]
注意:
如果分支包含未合并的更改和未推送的提交,则该-d标志将不允许删除本地分支。
这是因为任何其他分支都看不到提交,并且 Git 正在保护您免于意外丢失任何提交数据。如果你尝试这样做,Git 会显示一个错误。如果确定要删,就如报错提示那样,改用-D标志。
-D即-- delete --force 会强行删除本地分支,无论其合并状态如何。
仅当您绝对确定要删除本地分支时才使用它。如果您没有将其合并到另一个本地分支或将其推送到代码库中的远程分支,您将面临丢失所做的任何更改的风险。
在删除远程分支时,同名的本地分支并不会被删除。
查看所有分支,包括本地分支和远程分支
git branch -a
remote_branch_name 是要删除的远程分支的名称
git push origin --delete [remote_branch_name]
git fetch -p
git merge后发现冲突太多,或者合并的分支代码并不是最新,想要撤销合并(用来撤销还没commit 的merge)
git reset --hard HEAD
查看所有提交的版本信息
注意:黄色字体中 commit后面的一串码就是每一个版本号对应的码
git log
回退到指定版本
注意:–hard 删除工作空间改动代码,撤销commit,撤销git add .
git reset --hard 版本号
reset是指将HEAD指针指到指定提交,历史记录中不会出现放弃的提交记录。
推送代码
git push origin master -f
恢复最近一次提交过的状态,即放弃上次提交后的所有本次修改
git reset --hard HEAD^