现在公司项目经常用git做版本管理,现总结一些常用git操作命令:
向远程仓库提交代码的整体过程如下:
git status 查看工作区代码相对于暂存区的差别
git add . 将当前目录下修改的所有代码从工作区添加到暂存区 . 代表当前目录
git commit -m ‘注释’ :将缓存区内容添加到本地仓库
git pull origin master :先将远程仓库master中的信息同步到本地仓库master中
git push origin master :将本地版本库推送到远程服务器,
origin是远程主机,master表示是远程服务器上的master分支和本地分支重名的简写,分支名是可以修改的
一、git add
git add命令主要用于把我们要提交的文件的信息添加到索引库中。当我们使用git commit时,git将依据索引库中的内容来进行文件的提交。
git add -A : 提交所有变化
git add -u : 提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)
git add . : 提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件
git add 文件名称 : 只add指定文件,例如 git add file.txt
二、git commit
git commit 命令用来将本地暂存的修改提交到版本库。
1.git commit -m “message”
-m 参数表示可以直接输入后面的“message”,如果不加 -m参数,那么是不能直接输入message的,而是会调用一个编辑 器一般是vim来让你输入这个message,
message即是我们用来简要说明这次提交的语句。
举例: git commit -m 'message1'
2.git commit --amend
git commit --amend //也叫追加提交,它可以在不增加一个新的commit-id的情况下将新修改的代码追加到前一次的commit-id中,
即如果我们不小心提交了一版我们不满意的代码,并且给它推送到服务器了,在代码没被merge之前我们希望再修改一版满意的,而如果我们不想在服务器上abondon,就可以用git commit -amend命令.
三、git push
在使用git commit命令将修改从暂存区提交到本地版本库后,下一步需要将本地版本库的分支推送到远程服务器上对应的分支了。
git push的一般形式为 git push <远程主机名> <本地分支名> <远程分支名> ,
例如 git push origin master:refs/for/master ,即是将本地的master分支推送到远程主机origin上的对应master分支, origin 是远程主机名。第一个master是本地分支名,第二个master是远程分支名。
四、git config
git设置提交用户名、邮箱。
1.全局修改(对应修改配置文件:~/.gitconfig)
指项目workspace下所有项目都走这个配置
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱地址"
2.只修改当前资源库(对应修改配置文件:工作区目录/.git/config)
git config user.name "你的用户名"
git config user.email "你的邮箱地址"
注意:如果项目设置了邮箱规则(比如提交用户邮箱后缀必须是公司邮箱),就需要用git config命令来设置邮箱地址。
否则会报"GIT Error:- expected committer email" 期望邮箱地址错误。