1 Star 0 Fork 0

dusk/培训

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
git常用命令以及问题解决 7.52 KB
一键复制 编辑 原始数据 按行查看 历史
dusk 提交于 2023-04-23 16:05 . add git常用命令以及问题解决.
git 的常用使用命令给我详细的罗列出来,以及git使用过程中出现的各种问题以及解决办法也要详细罗列。最后
附上一些git的常见用法和技巧。
常用命令:
git init:初始化一个新的git仓库。
git add:将文件添加到暂存区。
git commit:将暂存区的文件提交到本地仓库。
git push:将本地仓库的文件推送到远程仓库。
git pull:将远程仓库的文件拉取到本地仓库。
git clone:将远程仓库克隆到本地。
git status:查看文件状态。
git log:查看提交记录。
git branch:管理分支。
git merge:合并分支。
git checkout:切换分支或恢复文件。
git reset:恢复文件到指定版本。
git diff:查看文件差异。
git stash:暂存当前修改。
常见问题及解决办法:
出现冲突:当多人同时修改同一个文件时,可能会出现冲突。解决办法是手动合并文件,或者使用git mergetool工具。
误删文件:如果误删了文件,可以使用git checkout命令恢复。
回滚版本:如果提交了错误的版本,可以使用git reset命令回滚到指定版本。
分支管理:如果分支管理不当,可能会导致代码混乱。建议在开发前先规划好分支结构,并及时合并分支。
远程仓库连接失败:如果连接远程仓库失败,可以检查远程仓库地址是否正确,并检查网络连接是否正常。
对比文件差异:如果需要对比文件差异,可以使用git diff命令查看。
多人协作:如果多人协作,建议使用git pull命令频繁更新代码,避免冲突发生。
技巧:
使用.gitignore文件忽略不需要提交的文件。
使用git stash命令暂存当前修改,方便切换分支或恢复文件。
使用git log --oneline命令查看简洁的提交记录。
使用git merge --no-ff命令进行非快速合并,方便查看分支历史。
使用git rebase命令进行变基操作,方便合并分支。
使用git cherry-pick命令选择性地合并提交记录。
使用git blame命令查看每行代码的贡献者。
使用git bisect命令进行二分查找,快速定位代码问题。
关于git使用出现下面的问题,帮我分析一下,提供详细的 解决办法$ git push
fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin master
To have this happen automatically for branches without a tracking
upstream, see 'push.autoSetupRemote' in 'git help config'.
这个问题是因为当前分支master没有与远程仓库关联的上游分支(upstream branch),导致无法推送到远程仓库。解决办法是执行命令:
git push --set-upstream origin master
这个命令会将当前分支master推送到远程仓库,并设置远程仓库的master分支为当前分支的上游分支(upstream branch),下次推送时就可以直接使用git push命令了。
如果想让git在每次新建分支时自动设置上游分支,可以执行命令:
git config --global push.default current
git config --global push.autoSetupMerge always
这两个命令会将push.default设置为current,表示只推送当前分支;将push.autoSetupMerge设置为always,表示自动设置上游分支。这样就可以避免类似的问题了。
还是出现了错误,错误如下,继续帮我解决问题$ git push
fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin master
To have this happen automatically for branches without a tracking
upstream, see 'push.autoSetupRemote' in 'git help config'.
Administrator@WIN-2SGED6KFK8M MINGW64 /d/桌面/DOM基础(二)(2) (master)
$ git push --set-upstream origin master
To gitee.com:dusk_2355/train.git
! [rejected] master -> master (fetch first)
error: failed to push some refs to 'gitee.com:dusk_2355/train.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
Adminis
这个错误提示是因为远程仓库中的master分支比本地仓库的master分支更新,需要先将远程仓库的更新拉取到本地仓库,合并之后再推送。可以执行以下命令:
git pull origin master --allow-unrelated-histories
这个命令会将远程仓库的master分支合并到本地仓库的master分支中。如果出现冲突需要手动解决冲突。解决完冲突后再执行一次git push命令即可。
如果不需要保留远程仓库的历史记录,可以使用强制推送的方式:
git push -f origin master
这个命令会强制将本地仓库的master分支推送到远程仓库的master分支,覆盖掉远程仓库的历史记录。但是需要注意,这样做可能会导致其他开发者的代码丢失,所以需要谨慎使用。
Administrator@WIN-2SGED6KFK8M MINGW64 /d/桌面/DOM基础(二)(2) (master)
$ git pull
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.
git pull <remote> <branch>
If you wish to set tracking information for this branch you can do so with:
git branch --set-upstream-to=origin/<branch> master
Administrator@WIN-2SGED6KFK8M MINGW64 /d/桌面/DOM基础(二)(2) (master)
$
对此问题分析提供解决方案
这个问题是因为当前分支master没有与远程仓库关联的上游分支,无法自动拉取远程仓库的更新。解决办法是执行命令:
git branch --set-upstream-to=origin/master master
这个命令会将当前分支master与远程仓库的master分支关联起来,下次执行git pull命令时就可以自动拉取远程仓库的更新了。
如果想要在每次新建分支时自动关联上游分支,可以执行命令:
git config --global branch.autoSetupMerge always
git config --global branch.autoSetupRebase always
这两个命令会将branch.autoSetupMerge和branch.autoSetupRebase都设置为always,表示自动关联上游分支并使用merge或rebase方式合并更新。这样就可以避免类似的问题了。
$ git commit -m'dom评论区'
On branch master
Your branch is ahead of 'origin/master' by 2 commits.
(use "git push" to publish your local commits)
nothing to commit, working tree clean
Admin这是什么意思,对此分析,并且提供解决方案
这个提示意思是你当前的本地仓库的master分支比远程仓库的master分支多了2次提交,需要执行git push命令将本地的提交推送到远程仓库。
另外,这个提示中还有一句nothing to commit, working tree clean,表示当前的工作目录没有未提交的修改,也就是说,没有需要提交的内容。可能是因为你之前已经提交了一些修改,再次执行git commit命令时没有添加新的修改,导致没有需要提交的内容。
解决方案是先执行git add命令将需要提交的修改添加到暂存区,再执行git commit -m 'dom评论区'命令提交修改。然后再执行git push命令将本地的提交推送到远程仓库。如果还有其他需要合并的提交,可以先执行git pull命令将远程仓库的修改拉取到本地,再执行git push命令将本地的提交推送到远程仓库。
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
HTML
1
https://gitee.com/dusk_2355/train.git
git@gitee.com:dusk_2355/train.git
dusk_2355
train
培训
master

搜索帮助

0d507c66 1850385 C8b1a773 1850385