You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows系统下GitLab代码上传求助(附Robocode代码)

分步指导:将本地Robocode代码上传至GitLab(Windows + Git Bash)

步骤1:获取GitLab项目的克隆地址

  • 打开GitLab进入你的项目主页
  • 点击页面顶部的「克隆」按钮,选择「HTTPS」选项,复制弹出的地址(截图示意:GitLab项目顶部的克隆弹窗,显示HTTPS地址和一键复制按钮)

步骤2:初始化本地仓库并关联远程

  • 右键桌面空白处,选「Git Bash Here」打开终端
  • 创建专属项目文件夹并进入:
    mkdir robocode-project
    cd robocode-project
    
  • 初始化本地Git仓库:
    git init
    
  • 关联GitLab远程仓库(把<你的克隆地址>换成刚才复制的URL):
    git remote add origin <你的克隆地址>
    

步骤3:整理代码目录结构

你的代码包名是CTJ,必须对应文件夹结构才能正常编译:

  • 在项目文件夹里创建CTJ子文件夹:
    mkdir CTJ
    
  • 把桌面的Firsty.java文件移动到robocode-project/CTJ目录下(直接拖拽或者用命令:mv /c/Users/你的用户名/Desktop/Firsty.java ./CTJ/,替换成你的实际用户名)

步骤4:提交代码到本地仓库

  • 把所有文件加入暂存区:
    git add .
    
  • 提交代码并添加说明:
    git commit -m "Initial commit: 上传Firsty Robocode机器人代码"
    

步骤5:推送到GitLab远程仓库

  • 第一次推送需要指定主分支:
    git push -u origin main
    
  • 此时会提示输入GitLab账号信息:
    • 用户名填你的GitLab登录账号
    • 密码如果是新版GitLab,需要用个人访问令牌代替(令牌在GitLab的「设置」→「访问令牌」中创建,勾选write_repository权限)

你的Robocode代码(已清理注释)

package CTJ;
import robocode.*;

public class Firsty extends Robot        
{
    public static final int MAX_HITS = 3;
    public static final int TIMER = 3;
    double lastBearing = 0;
    int hitCounter = 0;
    int myTimer = TIMER;
    

    public void run() {
        
        while(true) {

            myTimer = myTimer - 1;
            ahead(lastBearing);
            turnGunRight(360);
            back(100);
            turnGunRight(lastBearing + 90);
            
                if(myTimer == 0) {
                    
                    if(hitCounter > MAX_HITS) {
                        runLikeHell();
                    } else {
                        hitCounter = 0;
                        myTimer = TIMER;
                    } 
                }
        }
    }


    public void onScannedRobot(ScannedRobotEvent e) {        

        fire(10);
        back(5);
    }


    public void onHitByBullet(HitByBulletEvent e) {
        turnLeft(90 - e.getBearing());
        lastBearing = e.getBearing();
        hitCounter = hitCounter + 1;
    }
    
    public void onHitWall(HitWallEvent e) { 
        turnRight(e.getBearing() + 153);
    }
    
    public void runLikeHell() {
        out.println("evading....");
        turnLeft(172);
        ahead(500);
        hitCounter = 0;
        myTimer = TIMER;
    }   
}

内容的提问来源于stack exchange,提问作者Cristiano Rodrigues da Silva

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 11:39:48