Rey declaring herself a Skywalker may have sparked debate among viewers, but from a certain point of view it makes sense as a conclusion to both her story and the Skywalker saga.
Since the release of A New Hope, the name “Skywalker” has been legendary. Over time, it's grown into a synonym for “Jedi.” Luke and Anakin Skywalker are two of the most popular characters in Star Wars, and they’re almost guaranteed to be on anyone’s ranking of the best Jedi ever. In the galaxy far, far away, it was no different; Anakin was a legend in his time, and Luke's fame grew even greater.
However, legends have always been attached more to the name than to the person. We hear the name, think of the person, and associate that person with an image that doesn’t necessarily apply. In the case of the Skywalkers, the image is that of a perfect Jedi: something that the galaxy never saw, even from Luke and Anakin. That was part of their downfall; they knew what everyone wanted them to be and no matter how hard they tried, they couldn't live up to it.
For Rey, things will be different. Like both Luke and Anakin, she has a good heart. Unlike either of them, she had the chance to discover herself without the pressure of a legend tied to her name; and by the end of The Rise of Skywalker, she understood that she'd always had the spirit of a true Jedi.
One of her first acts in The Force Awakens was to rescue BB-8 and let him stay with her while he waited for Poe to come find him. Unkar Plutt offered her a fortune in rations for the droid, but Rey refused. She was strong enough to resist when Kylo Ren tried to use the mind probe on her. She freed herself from a First Order cell and would have escaped Starkiller Base without help if she hadn’t run into Finn, Han, and Chewbacca.
Through her Force bond with Kylo Ren, she came to see the light in him. She believed in him when no one else did, showed him compassion where no one else had. Rey had a chance to kill Kylo on Starkiller Base but chose not to. She had that chance again in Snoke’s throne room, but she chose mercy a second time. After stabbing Kylo on the wreckage of the second Death Star, she could have walked away and let him die; instead, she healed him out of love.
Facing Palpatine, the embodiment of evil, Rey chose goodness once more; one of the first things she said to him was “All you want is for me to hate, but I won’t. Not even you.” When she killed him, it was to save her friends: an act of love for her found family, not an act of hate for Palpatine.
Rey isn’t a true Jedi because she’s perfect: she’s not perfect and she never pretended to be. She is a true Jedi because every time she’s faced with darkness, she turns to the light. Even when she starts to give in to hate and anger, she chooses the path of love, compassion, and kindness: the path of a true Jedi.
That’s why Luke and Leia appeared to her on Tatooine: they knew what the Skywalker name meant to the galaxy, and they knew Rey understood it as well. They offered her a choice and she chose to continue the Skywalker legacy. She knew it would be impossible to live up to the legend, that no one before her had and no one after her would. But she understood that the Skywalker legend was built around people who simply tried to do the right thing: just as she had always done.
Just as she would always continue to do.