一、下载
git clone + 地址,如:git clone https://github.com/goldenJet/POIDemo.git
git pull 拉代码,一般是提交之前都必须做的一件事(就像SVN上传前先 update 一样,防止冲突)
</p>
二、上传
① 先初始化
一般可以 git init 或者 git clone 这样你的文件下就会出现一个 .git 的隐藏文件。
② 添加
git add + 你需要提的文件
如: git add src/ pom.xml 意思是我要提交 src 文件夹下的文件和 pom.xml 文件。
再或者: git add . 意思是提交所有(注意这个 add 后面的小点,需要空格再加小点)。
③ 提交
如: git commit -m “first commit”
引号里面的是提交备注。
④ 推送(理解为同步吧就)
git push origin master
推送到 master 上去,或者你可以推送到其它分支上去。
三、其他
① 查看当前状态(包括所处的分支):git status
② 切换分支,如切换至dev分支: git checkout dev
③ 首次提交,有可能会出错:fatal: refusing to merge unrelated histories 那是因为两个仓库无共同的 commit,所以视为不同的项目,无法提交,
解决:git pull —allow-unrelated-histories
④ github 提交时没有contributions解决:大部分情况是提交的邮箱和 github 的邮箱不一致,
查看提交记录的邮箱:提交记录的地址后添加 .patch 即可查看,如:https://github.com/goldenJet/SpiderDemo/commit/a2f95d24979a90479e07affd6e70cd2f489cb05d.patch
查看本地的全局提交邮箱:git config —global user.email
修改本地的全局提交邮箱:git config —global user.email “your email address”
查看和修改当前项目的提交邮箱:把上述命令中的 —global 去掉即可
四、很实用
保存当前工作进度:git stash
使用场景举例: 本地代码有改动,但此时需要解决线上bug,此时的本地代码还不能commit,所以可以使用此命令来将本地代码先保存起来。
Git stash // 保存进度
Git stash save “common” // 保存进度,并且添加注释
Git stash list // 显示所有保存的进度
Git show stash@{num}
Git stash drop // 删除最新的一个进度
Git stash drop stash@{num} // 删除指定的进度
Git shash clear // 删除所有进度
Git shash pop // 恢复最新的进度到工作区,注意:会删除堆
Git stash pop stash@{num} // 恢复指定的进度到工作区,注意:会删除堆
Git stash apply // 同pop,但是不删除堆
Git stash apply stash@{num} // 同pop,但是不删除堆
注意:num下标从0开始