RTC LED control help

I am trying to use a Uno rev3 with a adafruit RTC to control a day night cycle for some 5v led strips for an automated indoor garden project and I cannot seem to make them work. I've tried making a new code with the same pin outputs just to make sure that the LEDs will work with my arduino and they do just fine. The RTC also seems to be working fine and shows up with the serial monitor just fine. Any help would be greatly appreciated. (ignore the code about the pump that's for the watering system which works fine).

#include <Wire.h>

#include <DS1307RTC.h>

// Date and time functions using a DS3231 RTC connected via I2C and Wire lib
#include "RTClib.h"

RTC_DS3231 rtc;

char daysOfTheWeek[7][12] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};

  //LED values

 
  //Pump values
int pump = 4;
int sensorPin = A0;
int sensorValue;  
int limit = 850;


void setup () {
  //pump on or off
  {
Serial.begin(9600);
pinMode(pump, OUTPUT);
pinMode(sensorPin, INPUT);
digitalWrite(pump, LOW);
}

  Serial.begin(9600);

#ifndef ESP8266
  while (!Serial); // wait for serial port to connect. Needed for native USB
#endif

  if (! rtc.begin()) {
    Serial.println("Couldn't find RTC");
    Serial.flush();
    abort();
  }

  if (rtc.lostPower()) {
    Serial.println("RTC lost power, let's set the time!");
    // When time needs to be set on a new device, or after a power loss, the
    // following line sets the RTC to the date & time this sketch was compiled
    rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
    // This line sets the RTC with an explicit date & time, for example to set
    // January 21, 2014 at 3am you would call:
    // rtc.adjust(DateTime(2014, 1, 21, 3, 0, 0));
  }

  // When time needs to be re-set on a previously configured device, the
  // following line sets the RTC to the date & time this sketch was compiled
  // rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
  // This line sets the RTC with an explicit date & time, for example to set
  // January 21, 2014 at 3am you would call:
  // rtc.adjust(DateTime(2014, 1, 21, 3, 0, 0));
  
}

void loop () //clock code
{
   pinMode(3, OUTPUT);
   int ledpin = 3;
  
  
    DateTime now = rtc.now();

    Serial.print(now.year(), DEC);
    Serial.print('/');
    Serial.print(now.month(), DEC);
    Serial.print('/');
    Serial.print(now.day(), DEC);
    Serial.print(" (");
    Serial.print(daysOfTheWeek[now.dayOfTheWeek()]);
    Serial.print(") ");
    Serial.print(now.hour(), DEC);
    Serial.print(':');
    Serial.print(now.minute(), DEC);
    Serial.print(':');
    Serial.print(now.second(), DEC);
    Serial.println();

    Serial.print(" since midnight 1/1/1970 = ");
    Serial.print(now.unixtime());
    Serial.print("s = ");
    Serial.print(now.unixtime() / 86400L);
    Serial.println("d");

    // calculate a date which is 7 days, 12 hours, 30 minutes, 6 seconds into the future
    DateTime future (now + TimeSpan(7,12,30,6));

    Serial.print(" now + 7d + 12h + 30m + 6s: ");
    Serial.print(future.year(), DEC);
    Serial.print('/');
    Serial.print(future.month(), DEC);
    Serial.print('/');
    Serial.print(future.day(), DEC);
    Serial.print(' ');
    Serial.print(future.hour(), DEC);
    Serial.print(':');
    Serial.print(future.minute(), DEC);
    Serial.print(':');
    Serial.print(future.second(), DEC);
    Serial.println();

    Serial.print("Temperature: ");
    Serial.print(rtc.getTemperature());
    Serial.println(" C");

    Serial.println();

   if(hour() == 22) digitalWrite(ledpin, HIGH);
   if(hour() == 23) digitalWrite(ledpin, LOW);

    delay(3000);
    
    

//pump code

{sensorValue = analogRead(sensorPin);
Serial.println("Analog Value: ");
Serial.println(sensorValue);
if (sensorValue<limit) {
digitalWrite(pump, HIGH);
}
else {
digitalWrite(pump, LOW);
}
delay(1000);
}
}

You are printing now.hour() and it shows the correct value but later you test hour(). Is that what you really want to do ?

What do you see if you print hour() ?

#include <Wire.h>
#include <DS1307RTC.h>
#include "RTClib.h"
RTC_DS3231 rtc;

char daysOfTheWeek[7][12] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};

#define pump  4
#define ledpin 3
#define sensorPin  A0
byte sensorValue;
int limit = 850;


void setup () {
  Serial.begin(9600);
  pinMode(sensorPin, INPUT);
  pinMode(ledpin, OUTPUT);
  pinMode(pump, OUTPUT);
  digitalWrite(pump, LOW);

  Serial.begin(9600);
#ifndef ESP8266
  while (!Serial); // wait for serial port to connect. Needed for native USB
#endif

  if (! rtc.begin()) {
    Serial.println("Couldn't find RTC");
    abort();
  }
  if (rtc.lostPower()) {
    Serial.println("RTC lost power, let's set the time!");
    rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
  }
}

void loop () {
  DateTime now = rtc.now();

  Serial.print(now.year(), DEC);
  Serial.print('/');
  Serial.print(now.month(), DEC);
  Serial.print('/');
  Serial.print(now.day(), DEC);
  Serial.print(" (");
  Serial.print(daysOfTheWeek[now.dayOfTheWeek()]);
  Serial.print(") ");
  Serial.print(now.hour(), DEC);
  Serial.print(':');
  Serial.print(now.minute(), DEC);
  Serial.print(':');
  Serial.print(now.second(), DEC);
  Serial.println();

  Serial.print("Temperature: ");
  Serial.print(rtc.getTemperature());
  Serial.println(" C");

  Serial.println();
  byte nowHour = hour();
  if (nowHour == 22) digitalWrite(ledpin, HIGH);
  if (nowHour == 23 || nowHour < 22) digitalWrite(ledpin, LOW);

  sensorValue = analogRead(sensorPin);
  Serial.println("Analog Value: ");
  Serial.println(sensorValue);
  if (sensorValue < limit) {
    digitalWrite(pump, HIGH);
  }
  else {
    digitalWrite(pump, LOW);
  }
  delay(1000);
}

i am not sure if <DS1307RTC.h> and "RTClib.h" working together

I'm sorry I should have mentioned I am VERY new to coding, what do you mean?

What is the best way to accomplish what I am trying to do? Again please be patient with me as I am a novice at coding.